Pagini recente » Cod sursa (job #1599867) | Cod sursa (job #53636) | Cod sursa (job #2418032) | Cod sursa (job #767485) | Cod sursa (job #1501815)
type nd=^nod;
nod=record
val:word;
next:nd;
end;
graf=array[1..50003]of nd;
var f:text;
p:nd;
g:graf;
x,y,m,n,i,j:word;
nod_de_start,folosit:array[1..50003]of boolean;
coada:array[1..50003]of word;
begin
assign(f,'sortaret.in');
reset(f);
read{ln}(f,n,m);
for i:=1 to n do
nod_de_start[i]:=true;
for i:=1 to m do
begin
read{ln}(f,x,y);
nod_de_start[y]:=false;
new(p);
p^.val:=y;
p^.next:=g[x];
g[x]:=p
end;
close(f);
j:=0;
for i:=1 to n do
if nod_de_start[i] then
begin
inc(j);
coada[j]:=i;
folosit[i]:=true
end;
i:=0;
repeat
inc(i);
p:=g[coada[i]];
while p<>nil do
begin
if not folosit[p^.val] then
begin
inc(j);
coada[j]:=p^.val;
folosit[p^.val]:=true;
end;
p:=p^.next;
end;
until i=j;
assign(f,'sortaret.out');
rewrite(f);
for i:=1 to j do
write(f,coada[i],' ');
close(f);
end.