import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Flody {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String order[] = br.readLine().split(" ");
int n = Integer.parseInt(order[0]), m = Integer.parseInt(order[1]);
int[][] vex = new int[n + 1][n + 1];
for (int i = 1; i < n + 1; i++)
for (int j = 1; j < n + 1; j++)
if (i != j)
vex[i][j] = Integer.MAX_VALUE;
for (int i = 0; i < m; i++) {
String data[] = br.readLine().split(" ");
int u = Integer.parseInt(data[0]);
int v = Integer.parseInt(data[1]);
int w = Integer.parseInt(data[2]);
vex[u][v] = w;
vex[v][u] = w;
}
for (int i = 1; i < n + 1; i++) {
for (int j = 1; j < n + 1; j++) {
for (int k = 1; k < n + 1; k++) {
int tmp = (vex[j][i] == Integer.MAX_VALUE || vex[i][k] == Integer.MAX_VALUE) ? Integer.MAX_VALUE
: vex[j][i] + vex[i][k];
if (vex[j][k] > tmp) {
vex[j][k] = tmp;
}
}
}
}
for (int i = 2; i < n + 1; i++) {
System.out.print(vex[1][i] + " ");
}
}
}
Flody-最短路
最新推荐文章于 2023-03-06 00:17:55 发布