Cod sursa(job #422114)

Utilizator andreifirstCioara Andrei Ioan andreifirst Data 22 martie 2010 10:23:07
Problema Schi Scor 50
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.77 kb
type lista=^nod;
     nod=record nr:integer; adr:lista; end;

var p, prim, r:lista;
    n, i, j, x:integer;
    f, g:text;

begin
assign (f, 'schi.in'); reset (f);
assign (g, 'schi.out'); rewrite (g);
read (f, n);
new(prim);
read (f, x); prim^.adr:=nil; prim^.nr:=1;

for i := 2 to n do
  begin
  read (f, x);
  case x of
    1: begin
       new(p);
       p^.nr:= i; p^.adr:=prim; prim:=p;
       end;
    2: begin
       new(p); p^.nr:=i; p^.adr:= prim^.adr; prim^.adr:=p;
       end;
    else
       begin
       r:=prim;
       for j := 1 to x-2 do r:=r^.adr;
       new(p); p^.nr:=i; p^.adr:= r^.adr; r^.adr:=p;
       end;
    end;
  end;

r:=prim;
while r<> nil do
  begin
  writeln (g, r^.nr);
  r:=r^.adr;
  end;

close (f); close (g);
end.