Pagini recente » Cod sursa (job #9420) | Cod sursa (job #725807) | Cod sursa (job #2311377) | Cod sursa (job #537552) | Cod sursa (job #2449065)
#!/usr/bin/env python3
import sys, itertools
sys.stdout = open('royfloyd.out', 'w')
with open('royfloyd.in', 'r') as fin:
N = int(fin.readline())
A = [list(map(int, fin.readline().split())) for _ in range(N)]
D = [A[i][:] for i in range(N)]
for k, i, j in itertools.product(range(N), range(N), range(N)):
if D[i][k] * D[k][j] > 0 and i != j and (D[i][j] == 0 or D[i][j] > D[i][k] + D[k][j]):
D[i][j] = D[i][k] + D[k][j]
for i in range(N):
print(' '.join(map(str, D[i])))