Cod sursa(job #582677)

Utilizator stef93Stefan Gilca stef93 Data 15 aprilie 2011 18:03:28
Problema Floyd-Warshall/Roy-Floyd Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.63 kb
Program RF;
var a:array [1..102,1..102] of integer;
	n,i,j,k:integer;

begin
	assign(input,'royfloyd.in');
        reset(input);
        readln(n);
        for i:=1 to n do
        for j:=1 to n do
        read(a[i][j]);
        close(input);
        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)and((a[i][j]>a[i][k]+a[k][j]) or (a[i][j]=0))and (i<>j) ) then
        a[i][j]:=a[i][k]+a[k][j];
        assign(output,'royfloyd.out');
        rewrite(output);
        for i:=1 to n do  begin
        for j:=1 to n do
        write(a[i][j],' '); writeln; end;
end.