Pagini recente » Profil StarGold2 | Cod sursa (job #1780469) | Cod sursa (job #1586082) | Cod sursa (job #1344648) | Cod sursa (job #1650456)
#include <iostream>
#include <cstdio>
#include <vector>
#include <bitset>
#include <stack>
#define nmax 250010
using namespace std;
int n,m1,np;
int pater[nmax][20];
int main()
{
int nod,i,j,who,nr;
freopen("stramosi.in","r",stdin);
freopen("stramosi.out","w",stdout);
scanf("%d%d",&n,&m1);
for(i=1;i<=n;i++)
scanf("%d",&pater[0][i]);
for(i=1;(1<<i)<=n;i++)
for(j=1;j<=n;j++)
pater[i][j]=pater[i-1][ pater[i-1][j] ];
for(;m1;m1--)
{
scanf("%d%d",&who,&nr);
while(nr)
{
for(i=0;(1<<i)<=nr; i++); i--;
nr-=(1<<i);
who=pater[i][who];
}
printf("%d\n",who);
}
fclose(stdin);
fclose(stdout);
return 0;
}