Pagini recente » Cod sursa (job #988888) | Cod sursa (job #2252136) | Cod sursa (job #2151535) | Cod sursa (job #8334) | Cod sursa (job #369681)
Cod sursa(job #369681)
#include<cstdio>
using namespace std;
#define FIN "stramosi.in"
#define FOUT "stramosi.out"
int stramos[250001],niv[250001],n,m,x,y,aux,pos;
int fct(int a)
{ while(y!=0 && a!=0)
{y--; a=stramos[a];
}
return a;
}
int main()
{freopen(FIN,"r",stdin);
freopen(FOUT,"w",stdout);
scanf("%d %d",&n,&m);
niv[0]=0;stramos[0]=0;
for(int i=1;i<=n;i++) niv[i]=stramos[i]=0;
for(int i=1;i<=n;i++)
{scanf("%d",&stramos[i]);niv[i]=niv[stramos[i]]+1;
}
for(;m;m--)
{scanf("%d %d",&x,&y); printf("%d \n",fct(x)); }
return 0;
}