Pagini recente » Cod sursa (job #1123400) | Cod sursa (job #2074397) | Cod sursa (job #2725445) | Cod sursa (job #1657355) | Cod sursa (job #2358084)
Program sate;
var fi,fo:text;
s,a,d,b:array[1..100025] of integer;
n,m,x,y,i : integer;
begin
assign(fi,'sate.in'); reset(fi);
assign(fo,'sate.out'); rewrite(fo);
readln(fi,n); readln(fi,m);
readln(fi,x); readln(fi,y);
s[x]:=1;
for i:=1 to m do begin
readln(fi,a[i]); readln(fi,b[i]); readln(fi,d[i]); end;
while (s[y]=0) do begin
for i:=1 to m do
if (s[a[i]]<>0) and (s[b[i]]=0) then begin
s[b[i]]:=s[a[i]]+d[i];
end else
if (s[a[i]]=0) and (s[b[i]]<>0) then
s[a[i]]:=s[b[i]]-d[i];
end;
writeln(fo,s[y]-1);
close(fi); close(fo);
readln;
end.