1850: 弗洛伊德算法求最短路径

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:77 解决:27

题目描述

输入有向无环图的信息,利用弗洛伊德算法算出任意两个顶点间的最短路径.

输入

输入为一个测试用例,先输入顶点个数n(2~10),输入为一行。再输入n*n的邻接矩阵,矩阵中的i行j列的数据为i号顶点到j号顶点的边的权值信息(1~10000,无法到达的用-1标记,假设该图中不存在环,各顶点到自己的距离为0(即主对角数据为0)。

输出

输出一个n*n的矩阵,矩阵中的第i行j列代表第i个顶点到第就个顶点的最短路径,无法到达用-1表示(主对角数据不变,依然为0)。

样例输入 复制

3
0 8 -1
-1 0 5
4 6 0

样例输出 复制

0 8 13
9 0 5
4 6 0