Cod sursa(job #458497)

Utilizator nashnash mit nash Data 25 mai 2010 00:31:03
Problema Stramosi Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <stdio.h>

#define dim 8192
char ax[dim];
int pz;

inline void cit(int &x)
{
	x = 0;
	while(ax[pz] < '0' || ax[pz] > '9')
		if(++pz == dim) fread(ax,1,dim,stdin), pz = 0;
			while(ax[pz] >= '0' && ax[pz] <= '9')
			{
				x = x * 10 + ax[pz] - '0';
				if(++pz == dim) fread(ax,1,dim,stdin),pz = 0;
			}
}

int tata[250001],sol,i,j,n,m,p,q;

int main() {

	freopen("stramosi.in","r",stdin);
	freopen("stramosi.out","w",stdout);
	
	cit(n); cit(m);
	
	for(i=1;i<=n;i++)
		cit(tata[i]);
	
	for(i=1;i<=m;i++) {
		
		cit(q); cit(p);
		
		for(j=1,sol=q; j<=p && sol ;j++)
			sol=tata[sol];
		
		printf("%ld\n",sol);
	}
	
	
	return 0;
}