Cod sursa(job #562315)

Utilizator ion_calimanUAIC Ion Caliman ion_caliman Data 22 martie 2011 20:45:33
Problema Sortare topologica Scor 80
Compilator fpc Status done
Runda Arhiva educationala Marime 0.89 kb
var     a,v:array[0..50000]of longint;
        c:array[1..2,1..50000]of longint;
        n,m,x,y:longint;
        i,j:longint;
        f1,f2:text;
        b:boolean;

procedure sw(var a,b:longint);
var     t:longint;
begin
  t:=a; a:=b; b:=t;
end;

begin
  assign(f1,'sortaret.in');
  assign(f2,'sortaret.out');
  reset(f1);
  rewrite(f2);
  readln(f1,n,m);

  for i:=1 to m do
    readln(f1,c[1,i],c[2,i]);

  for i:=1 to n do
    a[i]:=i;
  repeat
    b:=true;
    reset(f1);
    readln(f1);
    for i:=1 to m do
      begin
        //readln(f1,x,y);
        //if a[x]>a[y] then
        if a[c[1,i]]>a[c[2,i]] then
          begin
            //sw(a[x],a[y]);
            sw(a[c[1,i]],a[c[2,i]]);
            b:=false;
          end;
      end;
  until b=true;

  for i:=1 to n do
    v[a[i]]:=i;
  for i:=1 to n do
    write(f2,v[i],' ');
  close(f2);
end.