关注
等我提交的时候,没时间了。。。 import java.util.Scanner;
public class Main {
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(minimumTimeCost);
}
private static int getMinimumTimeCost(int n, int[][] area) {
int res = Integer.MAX_VALUE;
for (int i = 0; i < n; i++) {
int t = dfs(area, 0, i, n, 0);
// System.out.println("res:" + t);
if (t < res && t != -1)
res = t;
}
return res;
}
static int dfs(int[][] area, int i, int j, int n, int t) {
// System.out.println(i + " " + j);
if (i > n || j >= n)
return -1;
if (i == n)
return t;
if (j == n - 1)
return dfs(area, i += 2, j, n, t += area[i - 1][j]);
if (area[i + 1][j] <= area[i][j + 1])
return dfs(area, i += 2, j, n, t += area[i - 1][j]);
return dfs(area, i, j += 2, n, t += area[i][j - 1]);
}
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
正在热议
# 25届秋招总结 #
482344次浏览 4926人参与
# 晒一晒我的offer #
10068194次浏览 106631人参与
# 职场情商大赛 #
4068次浏览 53人参与
# 我在牛爱网找对象 #
78144次浏览 586人参与
# 如何排解工作中的焦虑 #
77008次浏览 1080人参与
# lastday知无不言 #
25212次浏览 182人参与
# 机械人怎么评价今年的华为 #
161165次浏览 1374人参与
# 你觉得今年秋招难吗 #
1263032次浏览 15835人参与
# 夸夸我的求职搭子 #
134388次浏览 1381人参与
# 同bg的你秋招战况如何? #
98039次浏览 742人参与
# 我发现了面试通关密码 #
951321次浏览 15840人参与
# 非技术岗简历怎么写 #
163696次浏览 2501人参与
# 今年形式下双非本找得到工作吗 #
53979次浏览 500人参与
# 非技术er求职现状 #
26103次浏览 223人参与
# 实习,投递多份简历没人回复怎么办 #
2476738次浏览 35018人参与
# 怎么面对正在吵架的两个同事 #
10097次浏览 75人参与
# 实习想申请秋招offer,能不能argue薪资 #
41620次浏览 334人参与
# 非技术岗薪资爆料 #
210439次浏览 1820人参与
# 央国企投递记录 #
56940次浏览 1157人参与
# 找工作时遇到的神仙HR #
571970次浏览 3907人参与