Cod sursa(job #67646)
Utilizator | Data | 25 iunie 2007 12:58:06 | |
---|---|---|---|
Problema | Sate | Scor | 15 |
Compilator | fpc | Status | done |
Runda | preONI 2007, Runda Finala, Clasa a 9-a si gimnaziu | Marime | 1.31 kb |
var v:array[1..1000,1..1000] of longint;
i,j,n,m,d,x,y,a,b,g:longint;
f1,f2:text;
begin
assign(f1,'sate.in');
reset(f1);
assign(f2,'sate.out');
rewrite(f2);
read(f1,n,m,x,y);
for i:=1 to m do
begin
read(f1,a,b,d);
v[a,b]:=d;
end;
while v[x,y]=0 do
begin
for i:=1 to n do
for j:=i+1 to n do
begin
if v[i,j]<>0 then
begin
for g:=1 to i-1 do
begin
if v[g,i]>0 then
begin
if g>j then v[g,j]:=v[i,j]-v[g,i];
if g<j then v[g,j]:=v[i,j]+v[g,i];
end;
end;
for g:=1 to j-1 do
begin
if v[g,j]>0 then
begin
if g>i then v[i,g]:=v[i,j]-v[g,j];
if g<i then v[i,g]:=v[i,j]+v[g,j];
end;
end;
end;
end;
end;
writeln(f2,v[x,y]);
close(f1);
close(f2);
end.