Cod sursa(job #1613258)

Utilizator TirauStelianTirau Ioan Stelian TirauStelian Data 25 februarie 2016 11:51:21
Problema Floyd-Warshall/Roy-Floyd Scor 0
Compilator fpc Status done
Runda Arhiva educationala Marime 0.66 kb
program roy;
var a:array [1..101,1..101] of longint;
    f,g:text;
    i,j,k,n:integer;
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
        begin
          read(f,a[i,j]);
          if a[i,j]=0 then
            a[i,j]:=1000000;
        end;
      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.