Pagini recente » Cod sursa (job #2692735) | Cod sursa (job #140685) | Cod sursa (job #2216509) | Cod sursa (job #2483611) | Cod sursa (job #975617)
Cod sursa(job #975617)
#include <stdio.h>
#define NMAX 250005
#define MMAX 300005
using namespace std;
int T[NMAX],N,M;
void read()
{
scanf("%d %d\n",&N,&M);
int i;
for (i=1;i<=N;i++)
scanf("%d ",&T[i]);
}
int father(int P,int Q,int NR)
{
if (NR==P)
return Q;
if (T[Q])
father(P,T[Q],NR+1);
}
int main()
{
freopen ("stramosi.in","r",stdin);
freopen ("stramosi.out","w",stdout);
int i,a,b;
read();
for (i=1;i<=M;i++)
{
scanf("%d %d\n",&a,&b);
printf("%d\n",father(b,a,0));
}
fclose(stdin);
fclose(stdout);
return 0;
}