Cod sursa(job #24208)

Utilizator costinbCostin Boldisor costinb Data 1 martie 2007 21:37:05
Problema Stramosi Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include <stdio.h>
int M,N;
int v[250000];

inline void calc(int Q, int P){
	int poz = Q - 1;

	while(P > 0){
		if(poz <= 0){
			printf("0\n");
			return;
		}		
		poz = v[poz] - 1;
		--P;
	}

	if(poz >= 0)
		printf("%d\n",poz+1);
	else
		printf("0\n");
}

int main(){
	freopen("stramosi.in","r",stdin);
	freopen("stramosi.out","w",stdout);

	scanf("%d %d",&N,&M);

	for(int i = 0 ; i < N ; ++i)
		scanf("%d",&v[i]);
	for(int i = 0 ; i < M ; ++i){
		int Q, P;

		scanf("%d %d",&Q,&P);

		calc(Q,P);

	}

	return 0;
}