Pagini recente » Cod sursa (job #1916518) | Cod sursa (job #2199918) | Cod sursa (job #202758) | Cod sursa (job #1845668) | Cod sursa (job #138480)
Cod sursa(job #138480)
{$ S-,R-,I-,Q-}
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;
procedure rez;
begin
while (q>0)and(p<>0) do
for j:=0 to 17 do
if (1 shl j<=q)and(p<>0)and(1 shl (j+1)>q)
then
begin
p:=a[p,j];
q:=q-(1 SHL j);
if (p=0)or(q=0) then begin writeln(ff,p); exit; end;
break;
end;
writeln(ff,p);
end;
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 17 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);
rez;
end;{
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.