Cod sursa(job #680027)
Utilizator | Data | 13 februarie 2012 23:56:18 | |
---|---|---|---|
Problema | Floyd-Warshall/Roy-Floyd | Scor | 50 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.55 kb |
program royfloyd;
var f,g:text;
n,i,j,k:integer;
a:array[1..100,1..100] of longint;
begin
assign (f,'royfloyd.in'); reset (F);
assign (g,'royfloyd.out'); rewrite (G);
readln(f,n);
for i:=1 to n do
begin
for j:=1 to n do
read (f,a[i,j]);
readln (f);
end;
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];
for i:=1 to n do
begin
for j:=1 to n do
write (g,a[i,j],' ');
writeln (g);
end;
close (F);
close (g);
end.