#P2211. 2211 - 求任意两点之间的最短路

2211 - 求任意两点之间的最短路

题目描述

给定一个 nn 个顶点, mm 条边的有向图(其中某些边权可能为负,但保证没有负环、自环)。

请编程计算出任意两点之间的最短路。

输入

第一行两个整数 nn, mm

接下来 mm 行,每行有 33 个整数 uvlu、v、l ,表示 uu 点到 vv 点之间有一条有向边,边长为 ll

1n1001 ≤ n ≤ 1001m50001 ≤ m ≤ 50001000l1000-1000 \le l \le 1000

注意:样例数据保证两点之间只有一条有向边。

输出

输出共 nn 行,每行有 nn 个整数,第 ii 行的第 jj 个数,代表的是从点 ii 到点 jj 的最短路的值;

如果两点之间不存在能达到的路径,请输出字母N

样例

3 3
1 2 -1
2 3 -1
3 1 2
0 -1 -2
1 0 -1
2 1 0

来源

图论