Cod sursa(job #180689)

Utilizator marius21Marius Petcu marius21 Data 17 aprilie 2008 13:44:48
Problema Floyd-Warshall/Roy-Floyd Scor 0
Compilator fpc Status done
Runda Arhiva educationala Marime 0.52 kb
var i,j,k,n:longint;
a:array[1..100,1..100]of longint;
f,g:text;
begin
assign(f,'royfloyd.in');
assign(g,'royfloyd.out');
reset(f);
rewrite(g);
read(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 n do
      if (a[i,k]<>0) and (a[k,j]<>0) then
        if (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(g);
  end;
close(f);
close(g);
end.