Cod sursa(job #248901)

Utilizator valytgjiu91stancu vlad valytgjiu91 Data 27 ianuarie 2009 00:57:00
Problema Stramosi Scor 80
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.73 kb
var
v: array[1..19,1..250000] of longint;
f,g:text;
n,n2,m,i,j,x,y,stramos,k:longint;
c:array[1..20] of longint;
begin
assign(f, 'stramosi.in');
assign(g, 'stramosi.out');
reset(f);
rewrite(g);
readln(f, n, m);
c[1]:=1;
for i:=2 to 20 do c[i]:=c[i-1]*2;
n2 := 19;
while (n div c[n2]) = 0 do n2:=n2-1;
for i:=1 to n do
read(f, v[1,i]);
for j:=2 to n2 do
for i:=1 to n do
 if v[j-1,i]<>0 then v[j,i]:=v[j-1,v[j-1,i]];
for i := 1 to m do
begin
  readln(f,x,y);
  n:=19;
  k:=y;
  stramos:=x;
  while (k<>0) and (stramos<>0) do
          begin
          while (k div c[n]) = 0 do n:=n-1;
             stramos:=v[n,stramos];
             k:=k-c[n];
           end;
         writeLn(g,stramos);
       end;
close(g);
end.