Cod sursa(job #40174)

Utilizator DastasIonescu Vlad Dastas Data 27 martie 2007 11:48:36
Problema Stramosi Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
//#include <iostream>
#include <cstdio>

//using namespace std;

inline int find( int nr, int times, int in[] )
{
	for ( int i = 0; i < times; ++i )
	{
		if ( in[nr-1] == 0 )
		{
			return 0;
		}
		nr = in[nr-1];
	}
	return nr;
}

int main ()
{
	int n;

	int N[250000];

	int temp1, temp2;
	char temp[512];

	FILE *in, *out;

	in = fopen("stramosi.in", "r");
	out = fopen("stramosi.out", "w");

	fscanf(in, "%d", &n);
	fgets(temp, 512, in);

	for ( int i = 0; i < n; ++i )
	{
		fscanf(in, "%d", &N[i]);
	}

	while ( fscanf(in, "%d %d", &temp1, &temp2) == 2 )
	{
		fprintf(out, "%d\n", find ( temp1, temp2, N ));
	}
	return 0;
}