关注
public class ALibaba {
static int res=Integer.MAX_VALUE;
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String line = scanner.nextLine();
int n = Integer.parseInt(line);
int[][] area = new int[n][n];
for (int i = 0; i < n; i++) {
line = scanner.nextLine();
String[] split = line.split(",");
if (split.length != n) {
throw new IllegalArgumentException("错误输入");
}
int j = 0;
for (String num : split) {
area[i][j++] = Integer.parseInt(num);
}
}
int minimumTimeCost = getMinimumTimeCost(n,area);
System.out.println(res);
}
/** 请完成下面这个函数,实现题目要求的功能 **/
/** 当然,你也可以不按照这个模板来作答,完全按照自己的想法来 ^-^ **/
private static int getMinimumTimeCost(int n, int[][] area) {
for(int i=0;i<n;i++) {
dfsHelper(0,i,n,area,0);
}
return 0;
}
private static void dfsHelper(int i,int j,int n,int[][] area,int record) {
if(i==n-1) {
res=Math.min(res, record);
return;
}
if(i==n-2) {
dfsHelper(i+1,j,n,area,record+area[i+1][j]);
}
if(i<n-2) {
dfsHelper(i+2,j,n,area,record+area[i+1][j]);
}
if(j<n-2) {
dfsHelper(i,j+2,n,area,record+area[i][j+1]);
}
}
} DFS暴搜 40.。。。
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
正在热议
# 25届秋招总结 #
500972次浏览 5135人参与
# 职场情商大赛 #
10015次浏览 123人参与
# 晒一晒我的offer #
10113681次浏览 107044人参与
# 字节跳动工作体验 #
227717次浏览 3133人参与
# 运营人的第一份offer应该如何选 #
88693次浏览 890人参与
# 如何排解工作中的焦虑 #
80722次浏览 1103人参与
# 机械人的薪资开到多少,才适合去? #
79317次浏览 376人参与
# 滴!实习打卡 #
497565次浏览 5656人参与
# 夸夸我的求职搭子 #
135447次浏览 1397人参与
# 百度工作体验 #
149259次浏览 1512人参与
# 我的岗位说明书 #
97222次浏览 960人参与
# 面试题刺客退退退 #
147884次浏览 2184人参与
# 如果不工作真的会快乐吗 #
62548次浏览 542人参与
# 我的第一份实习怎么找的 #
36540次浏览 317人参与
# 25届非技术实习投递记录 #
97213次浏览 878人参与
# 小红书求职进展汇总 #
32226次浏览 273人参与
# 求职你最看重什么? #
19261次浏览 136人参与
# 远程面试的尴尬瞬间 #
24146次浏览 324人参与
# 我的求职思考 #
4266029次浏览 57588人参与
# 你投了多少份简历了? #
71763次浏览 843人参与