关注
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[][] times = new int[6][6];
for (int i = 0; i < 6; i++) {
for (int j = 0; j < 6; j++) {
times[i][j] = sc.nextInt();
if (times[i][j] == -1) {
times[i][j] = Integer.MAX_VALUE;
}
}
}
int[] dist = distence(times);
for (int i = 1; i < 6; i++) {
System.out.println(dist[i]);
}
}
public static int[] distence(int[][] times) {
int maxTime = Integer.MAX_VALUE;
int N = 6;
int[] dist = new int[N];
boolean[] isVisited = new boolean[N];
for (int i = 0; i < N; i++) {
dist[i] = times[0][i];
}
isVisited[0] = true;
for (int i = 0; i < N; i++) {
int min = maxTime;
int k = 0;
for (int j = 0; j < N; j++) {
if (!isVisited[j] && dist[j] < min) {
min = dist[j];
k = j;
}
}
isVisited[k] = true;
for (int j = 0; j < N; j++) {
if (!isVisited[j] && times[k][j] != maxTime) {
if (dist[j] >= times[k][j] + dist[k]) {
dist[j] = times[k][j] + dist[k];
}
}
}
}
return dist;
}
} ac了,按回忆写的,有些可能有问题,但是大概思路就是这个
查看原帖
点赞 2
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 月薪多少能在一线城市生存 #
79126次浏览 531人参与
# 你会为了工作牺牲生活吗? #
60966次浏览 424人参与
# 百度秋招 #
38297次浏览 334人参与
# 如果再来一次,你还会选择这个工作吗? #
705187次浏览 5730人参与
# 秋招吐槽大会 #
7856次浏览 87人参与
# offer帮选 #
4349332次浏览 26372人参与
# 技术转行的心路历程 #
73109次浏览 745人参与
# 你找工作想离家近 or 离家远? #
1658次浏览 32人参与
# 总结:哪家公司最喜欢泡池子 #
151510次浏览 543人参与
# 小米编程考试 #
23322次浏览 145人参与
# 你小时候最想从事什么职业 #
134718次浏览 1991人参与
# 互联网行业现在还值得去吗 #
38450次浏览 282人参与
# 虾皮开奖 #
45645次浏览 213人参与
# 滴滴歧视残疾人HR被开除 #
23930次浏览 86人参与
# 京东工作体验 #
19473次浏览 113人参与
# 26届的你们有几段实习? #
153330次浏览 1068人参与
# 25届非技术实习投递记录 #
137447次浏览 1001人参与
# 落户对你的求职选择影响有多大 #
30183次浏览 101人参与
# 机械人,秋招第一次笔试的企业是哪家? #
79880次浏览 611人参与
# 你认为工作的意义是什么 #
211147次浏览 1354人参与
# 大疆求职进展汇总 #
631528次浏览 4262人参与
