【模板】多源最短路径
题号:NC233774
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

有一张n个点的有向图,给定其邻接矩阵,若,则ij之间没有连边,否则ij有一条权值为的边。求该图任意两点间的最短距离。

输入描述:

第一行输入一个整数n (),表示点数。
接下来的n行,每行n个整数 (),表示邻接矩阵。保证

输出描述:

输出n行,每行n个整数。其中,第i行第j列的整数表示从ij的最短距离。若i,j之间不可达,则输出-1
示例1

输入

复制
4
0 1 -1 -1
-1 0 1 -1
-1 -1 0 1
1 -1 -1 0

输出

复制
0 1 2 3
3 0 1 2
2 3 0 1
1 2 3 0