Cod sursa(job #70377)

Utilizator M@2Te4iMatei Misarca M@2Te4i Data 5 iulie 2007 18:47:30
Problema Stramosi Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.95 kb
#include<stdio.h>

int n,m,w[250001],a,c,q;

/*void rezolvare(long e, long q)
{
if (q==c-1 || w[e]==0)
	printf("%ld\n",w[e]);
	else rezolvare(w[e],++q);			
}*/
/*
void rezolvare(long e, long q)
{
while (q!=c-1 && w[e]!=0)
	{
	e=w[e];
	++q;
	}
printf("%ld\n",w[e]);
}*/

/*void citire()
{
freopen("stramosi.in","r",stdin);
scanf("%ld%ld", &n, &m);
for (long i=1; i<=n; i++)
	scanf("%ld", &w[i]);
for (long i=1; i<=m; i++)
	{	
	scanf("%ld%ld", &a, &c);
//	rezolvare(a,0);
q=0;
while (q!=c-1 && w[a]!=0)
	{
	a=w[a];
	++q;
	}
printf("%ld\n",w[a]);
	}
fclose(stdin);
}
*/
int main()
{
freopen("stramosi.out","w",stdout);
//citire();
freopen("stramosi.in","r",stdin);
scanf("%d%d", &n, &m);
for (long i=1; i<=n; i++)
	scanf("%d", &w[i]);
for (long i=1; i<=m; i++)
	{	
	scanf("%d%d", &a, &c);
q=0;
while (q!=c-1 && w[a]!=0)
	{
	a=w[a];
	++q;
	}
printf("%d\n",w[a]);
	}
fclose(stdin);
fclose(stdout);
return 0;
}