Pagini recente » Cod sursa (job #1963851) | Cod sursa (job #2210906) | Cod sursa (job #2595418) | Cod sursa (job #2643883) | Cod sursa (job #894865)
Cod sursa(job #894865)
#include<cstdio>
#include<algorithm>
using namespace std;
int s[20][250010],i,j,n,m,p,ip,a,b;
int main()
{
freopen("stramosi.in","r",stdin);
freopen("stramosi.out","w",stdout);
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++) scanf("%d",&s[0][i]);
for(i=1,p=2;p<=n;i++,p<<=1)
for(j=1;j<=n;j++)
s[i][j]=s[i-1][s[i-1][j]];
ip=i;
for(;m;--m)
{
scanf("%d%d",&b,&a);
for(;a && b;)
{
for(p=1,i=0;p<=a;p<<=1,i++); p>>=1; i--;
a-=p;
b=s[i][b];
}
printf("%d\n",b);
}
return 0;
}