Pagini recente » Cod sursa (job #3321797) | Cod sursa (job #3342969) | Cod sursa (job #1209894) | Cod sursa (job #2103222) | Cod sursa (job #1613307)
program royfloyd;
var a:array[1..101,1..101] of integer;
f,g:text;
n:longint;
procedure citire;
var i,j:integer;
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
begin
read(f,a[i,j]);
if (a[i,j]=0) and (i<>j) then
a[i,j]:=maxint;
end;
end;
procedure afisare;
var i,j:integer;
begin
for i:=1 to n do
begin
for j:=1 to n do
write(g,a[i,j],' ');
writeln(g);
end;
end;
procedure roy;
var i,j,k:integer;
begin
for k:=1 to n do
for i:=1 to n do
for j:=1 to n do
if a[i,j]>a[i,k]+a[k,j] then
a[i,j]:=a[i,k]+a[k,j];
end;
begin
citire;
roy;
afisare;
close(f);
close(g);
end.