Pagini recente » Cod sursa (job #2043968) | Cod sursa (job #122085) | Cod sursa (job #1674239) | Cod sursa (job #1946872) | Cod sursa (job #138429)
Cod sursa(job #138429)
type mat=array[0..250000,0..18]of longint;
var a:mat;
i,j,n,m,r,p,q,qq,c:longint;
f,ff:text;
begin
assign(f,'stramosi.in'); reset(f);
readln(f,n,m);
for i:=1 to n do read(f,a[i,0]);
for i:=1 to n do
for j:=1 to 18 do a[i,j]:=a[a[i,j-1],j-1];
assign(ff,'stramosi.out'); rewrite(ff);
for i:=1 to m do
begin
readln(f,p,q);
r:=p;
while ((q>0)and(r<>0)) do
begin
c:=0; qq:=1;
while ((2*qq<=q)and(r<>0)) do
begin
qq:=qq*2;
inc(c);
end;
r:=a[r,c];
q:=q-qq;
end;
writeln(ff,r);
end;
close(f); close(ff);
end.