Cod sursa(job #889636)

Utilizator Dddarius95Darius-Florentin Neatu Dddarius95 Data 24 februarie 2013 17:08:01
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator fpc Status done
Runda Arhiva educationala Marime 0.76 kb
program saddasdasdasd;
type mat=array[1..1000,1..1000]of integer;
var d:mat;
    n:integer;
    f,g:text;
procedure initializare;
var i,j:integer;
begin
for i:=1 to n do
  begin
  for j:=1 to n do read(f,d[i,j]);
  readln(f);
  end;

end;

procedure drumuri(var d:mat);
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 (i<>j)and(i<>k)and(k<>j) then
     if d[i,j]>d[i,k]+d[k,j] then  d[i,j]:=d[i,k]+d[k,j];
end;

procedure afisare_drum;
var i,j:integer;
begin
for i:=1 to n do
 begin
 for j:=1 to n do write(g,d[i,j],' ');
 writeln(g);
 end;
end;
begin
assign(f,'royfloyd.in');reset(f);
assign(g,'royfloyd.out');rewrite(g);
readln(f,n);
initializare;
drumuri(d);
afisare_drum;
close(f);close(g);
end.