8.13第三题动态规划
public class test {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = Integer.valueOf(in.nextLine().trim());
if (n == 1) {
System.out.println(1);
return;
}
String[] a=in.nextLine().split(" ");
String[] b=in.nextLine().split(" ");
HashSet<String> set = new HashSet<>();
String[][] dpa = new String[n][n];
String[][] dpb = new String[n][n];
for (int i = 0; i <n ; i++) {
for (int j = 0; j <n-i ; j++) {
if (i==0){
dpa[i][j]=a[j];
dpb[i][j]=b[j];
}else {
dpa[i][j]=dpa[i-1][j]+dpa[0][i+j];
dpb[i][j]=dpb[i-1][j]+dpb[0][i+j];
}
set.add(dpa[i][j]);
set.add(dpb[i][j]);
}
}
System.out.println(set.size());
}
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = Integer.valueOf(in.nextLine().trim());
if (n == 1) {
System.out.println(1);
return;
}
String[] a=in.nextLine().split(" ");
String[] b=in.nextLine().split(" ");
HashSet<String> set = new HashSet<>();
String[][] dpa = new String[n][n];
String[][] dpb = new String[n][n];
for (int i = 0; i <n ; i++) {
for (int j = 0; j <n-i ; j++) {
if (i==0){
dpa[i][j]=a[j];
dpb[i][j]=b[j];
}else {
dpa[i][j]=dpa[i-1][j]+dpa[0][i+j];
dpb[i][j]=dpb[i-1][j]+dpb[0][i+j];
}
set.add(dpa[i][j]);
set.add(dpb[i][j]);
}
}
System.out.println(set.size());
}
}
全部评论
相关推荐
点赞 评论 收藏
分享

点赞 评论 收藏
分享
03-03 23:52
Nanyang Technological University Java 点赞 评论 收藏
分享