给定一个有N个节点,M条边的无向图,每条边都有一个长度。小明需要知道从任意一个点出发到达其它点的最长的距离是多少。
(1)无向图保证是连通的。
(2)小明每一次都会选择距离下一个点最短的路径进行移动。
(3)如果图中存在环,那么环上任意两点之间的距离为0。
输入数据有若干行。
第一行,两个整数N、M,表示有N个点,M条边。
接下来M行,每行三个整数a、b、c,表示点a、b(1≤a,b≤N)之间有一条长度为 c的边。
输出数据共有N行,每行一个整数,第i行表示从i点出发到达其它点的最大距离。
6 6 1 4 2 1 2 6 2 5 3 2 3 7 6 3 4 3 1 8
4 4 4 6 7 7
【样例说明】
从点1出发经过(1, 3)(3, 6)两条边到达点的距离最大,其中(1, 3)的距离为0,(3, 6)的距离为4,所以从1出发到达别的点的最大距离为4。
【数据规模与约定】
30%的数据满足1≤N≤1000、1≤M≤1000
100%的数据满足1≤N≤20000、1≤M≤200000
时间限制 | 1 秒 |
内存限制 | 256 MB |