关注
等我提交的时候,没时间了。。。 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]);
}
}
查看原帖
点赞 评论
相关推荐
查看37道真题和解析
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
正在热议
# 25届秋招总结 #
555188次浏览 5674人参与
# 你都收到了哪些公司的感谢信? #
3643148次浏览 32020人参与
# 百融云创开奖 #
60806次浏览 640人参与
# 运营面经 #
72938次浏览 983人参与
# 现在还是0offer,延毕还是备考 #
838784次浏览 6983人参与
# 同事找你打听工资怎么办 #
10348次浏览 82人参与
# 牛客帮帮团来啦!有问必答 #
2410752次浏览 24877人参与
# 如何写一份好简历 #
635558次浏览 8883人参与
# 那些拿到大厂offer的简历长啥样 #
140496次浏览 2417人参与
# 我的求职思考 #
4325182次浏览 58176人参与
# 想实习转正,又想准备秋招,我该怎么办 #
504227次浏览 5114人参与
# 国企是春招机械人最好的去处吗 #
11218次浏览 66人参与
# 牛客激励计划 #
47849次浏览 1035人参与
# 实习想申请秋招offer,能不能argue薪资 #
48383次浏览 392人参与
# 如果实习可以转正,你会不会放弃秋招 #
217738次浏览 2891人参与
# 运营人的第一份offer应该如何选 #
90663次浏览 906人参与
# 运营每日一题 #
28521次浏览 406人参与
# 听劝,这个公司值得去吗 #
339981次浏览 1384人参与
# 我的论文进展 #
16709次浏览 223人参与
# 美的求职进展汇总 #
211890次浏览 1643人参与
# 实习与准备秋招该如何平衡 #
743035次浏览 8683人参与