Pagini recente » Cod sursa (job #427085) | Cod sursa (job #943661) | Cod sursa (job #133145) | Cod sursa (job #2459570) | Cod sursa (job #156072)
Cod sursa(job #156072)
#include<stdio.h>
int cat,n,x[18][260000],y[20];
int zz,p1,i,j,k,m;
int main(){
freopen("stramosi.in","r",stdin);
freopen("stramosi.out","w",stdout);
scanf("%d%d",&n,&cat);
y[0]=1;
for(j=1;j<=17;j++)
y[j]=2*y[j-1];
x[0][0]=0;
for(j=1;j<=n;j++)
scanf("%d",&x[0][j]);
for(i=1;i<=17;i++)
for(j=1;j<=n;j++){
m=x[i-1][j];
x[i][j]=x[i-1][m];
}
for(i=1;i<=cat;i++){
scanf("%d%d",&p1,&zz);
k=1;
while(zz){
if(zz%2==1)
p1=x[k-1][p1];
k++;
zz/=2;
}
printf("%d\n",p1);
}
fclose(stdout);
return 0;
}