Cod sursa(job #46848)

Utilizator fc_oni_cu_50_pctAnul asta in play-out fc_oni_cu_50_pct Data 3 aprilie 2007 01:33:47
Problema Schi Scor 60
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.05 kb
program schi;
type pnod=^nod;
     nod=record
                inf:integer;
                ad,as:pnod;
                end;
var p,q,nou,u:pnod;
    f,g:text;
    n,i,j,x:integer;
begin
assign(f,'schi.in'); reset(f);
assign(g,'schi.out'); rewrite(g);
read(f,n);
new(p);
p^.inf:=0;
q:=p;
new(u);
u^.inf:=0;
p^.ad:=u;
u^.as:=p;
for i:=1 to n do begin
            read(f,x);
            if x<=(i+1) div 2 then begin
            q:=p;
            for j:=1 to x-1 do q:=q^.ad;
            new(nou);
            nou^.inf:=i;
            nou^.ad:=q^.ad;
            nou^.as:=q;
            q^.ad^.as:=nou;
            q^.ad:=nou;
            end
            else begin
            q:=u;
            for j:=1 to i-x+1 do q:=q^.as;
                new(nou);
            nou^.inf:=i;
            nou^.ad:=q^.ad;
            nou^.as:=q;
            q^.ad^.as:=nou;
            q^.ad:=nou;

            end;
            end;

for i:=1 to n do begin
         p:=p^.ad;
         writeln(g,p^.inf);
         end;
close(f); close(g);
end.