Cod sursa(job #426172)

Utilizator mihai995mihai995 mihai995 Data 26 martie 2010 15:28:15
Problema Stramosi Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <fstream>
using namespace std;
int pred[250001];

int stramos(int x,int a)
{
	if (a==0)
		return 0;
	switch (x)
	{
		case 0:return a;break;
		case 1:return pred[a];break;
		case 2:return pred[pred[a]];break;
		case 3:return pred[pred[pred[a]]];break;
		case 4:return pred[pred[pred[pred[a]]]];break;
		case 5:return pred[pred[pred[pred[pred[a]]]]];break;
		case 6:return pred[pred[pred[pred[pred[pred[a]]]]]];break;
		default:return stramos(x-1,pred[a]);break;
	}
}

int main()
{
	int n,m,p,q,i;
	ifstream in("stramosi.in");
	ofstream out("stramosi.out");
	in>>n>>m;
	for (i=1;i<=n;i++)
		in>>pred[i];
	while (m--)
	{
		in>>q>>p;
		out<<stramos(p,q)<<"\n";
	}
	return 0;
}