Cod sursa(job #704547)

Utilizator andrei_toaderToader Andrei Sorin andrei_toader Data 2 martie 2012 18:41:22
Problema Sortare topologica Scor 0
Compilator fpc Status done
Runda Arhiva educationala Marime 0.75 kb
program sortare_topologica;
var f,g:text;
    n,m,i,nr,x,y:longint;
    viz:array of longint;
    a:array of array of longint;
    solutie:array of longint;

procedure dfs (i:longint);
var j:longint;
begin
 viz[i]:=1;
 nr:=nr+1; solutie[nr]:=i;
 for j:=1 to a[i,0] do
  if viz[a[i,j]]=0 then
   dfs(a[i,j]);
end;

begin
 assign (f,'sortaret.in'); reset (f);
 assign (g,'sortaret.out'); rewrite (G);
 readln (f,n,m);
 setlength (a,n+1,1);
 setlength (viz,n+1); setlength (solutie,n+1);
 for i:=1 to m do
 begin
  readln (f,x,y);
  setlength (a[x],length (a[x])+1);
  a[x,0]:=a[x,0]+1;
  a[x,a[x,0]]:=y;
 end;
 nr:=0;
 for i:=1 to n do
  if viz[i]=0 then
   dfs(i);
for i:=1 to n do
 write (g,solutie[i],' ');
 close (F); close (G);
end.