关注
第一题我的思路就是新建个二维arr数组,取arr[i+1][j]和arr[i][j+1]+arr2[i][j+2]的最小值,
可是只通过了 40%
public class solution1 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int[][] arr=new int[n][n];
for(int i=0;i<n;i++){
String s=sc.next();
String[] str=s.split(",");
int[] num=new int[n];
for(int k=0;k<n;k++){
num[k]=Integer.valueOf(str[k]);
}
arr[i]=num;
}
int[][] arr2=new int[n][n];
for(int i=n-2;i>=0;i=i-2){
for(int j=n-1;j>=0;j--){
if(j>=n-2){
if(i==n-2){
arr2[i][j]=arr[i+1][j];
}else{
arr2[i][j]=arr2[i+2][j]+arr[i+1][j];
}
}else{
if(i==n-2){
arr2[i][j]=Math.min(arr[i+1][j],arr[i][j+1]+arr2[i][j+2]);
}else{
arr2[i][j]=Math.min(arr[i+1][j]+arr2[i+2][j],arr[i][j+1]+arr2[i][j+2]);
}
}
}
}
int min=Integer.MAX_VALUE;
for(int i=0;i<n;i++){
min=Math.min(arr2[0][i],min);
}
System.out.println(min);
}
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 职场捅娄子大赛 #
292129次浏览 2782人参与
# 晒一下我的毕业照 #
20510次浏览 151人参与
# 华泰证券Fintech星战营 #
163761次浏览 185人参与
# 华为求职进展汇总 #
4619054次浏览 28140人参与
# 好好告别我的学生时代 #
10289次浏览 194人参与
# 一人一个landing小技巧 #
52438次浏览 857人参与
# 机械人,签完三方你在忙什么? #
47940次浏览 211人参与
# 简历无回复,你会继续海投还是优化再投? #
66800次浏览 690人参与
# 产品人专业大盘点 #
45258次浏览 293人参与
# 如何KTV领导 #
54565次浏览 409人参与
# 运营来爆料 #
42490次浏览 319人参与
# 互联网行业现在还值得去吗 #
16131次浏览 53人参与
# 你的秋招第一面感觉怎么样 #
69299次浏览 554人参与
# 嵌入式岗知多少 #
38522次浏览 424人参与
# 秋招最大的收获是什么? #
31627次浏览 287人参与
# 来聊聊机械薪资天花板是哪家 #
121367次浏览 735人参与
# 不考虑薪资和职业,你最想做什么工作呢? #
84624次浏览 647人参与
# 记录实习开销 #
9396次浏览 67人参与
# 如果不工作真的会快乐吗 #
115678次浏览 941人参与
# 应届生应该先就业还是先择业 #
105382次浏览 623人参与
# 节后第一天上班,我的精神状态 #
8494次浏览 72人参与