Pagini recente » Cod sursa (job #2333411) | Cod sursa (job #2440251) | Cod sursa (job #2599061) | Cod sursa (job #1339767) | Cod sursa (job #2196035)
program roy-floyd;
type
mat = array[1..100, 1..100] of integer;
var
a : mat;
n, i, j, k : integer;
f : text;
begin
assign(f, 'royfloyd.in');
assign(g, 'royfloyd.out');
reset(f);
rewrite(g);
readln(f, n);
for i := 1 to n do
for j := 1 to n do
read(f, a[i,j]);
for k := 1 to n do
for i := 1 to n do
for j := 1 to j do
if (i <> j) and (a[i,k] <> 0) and (a[k,j] <> 0) and ((a[i,j] = 0) or (a[i,j] > a[i,k] + a[k,j])) then
a[i,j] := a[i,k] + a[k,j];
for i := 1 to n do begin
for j := 1 to n do
write(g, a[i,j], ' ');
writeln;
end;
close(f);
close(g);
end.