Pagini recente » Cod sursa (job #1268599) | Cod sursa (job #1343847) | Cod sursa (job #2814895) | Cod sursa (job #2223118) | Cod sursa (job #146008)
Cod sursa(job #146008)
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define in "stramosi.in"
#define out "stramosi.out"
#define NMAX 250005
int N, M;
int tata[NMAX];
char buf[3000000];
int REC( int i, int nv );
int main()
{
freopen( in, "r", stdin );
freopen( out, "w", stdout );
scanf( "%d %d\n", &N, &M );
int i, X, Y;
{
for ( i = 1; i < N; ++i ) scanf( "%d ", &tata[i] );
scanf( "%d\n", &tata[N] );
}
fread( buf, sizeof(char), 3000000, stdin );
char *p;
p = strtok( buf, " " );
X = atoi( p );
p = strtok( 0, "\n" );
Y = atoi( p );
M--;
printf( "%d\n", REC(X,Y) );
for ( ; M > 0; --M )
{
p = strtok( 0, " " );
X = atoi( p );
p = strtok( 0, "\n" );
Y = atoi( p );
printf( "%d\n", REC( X, Y ) );
}
return 0;
}
int REC( int i, int nv )
{
if ( nv == 0 ) return i;
return REC(tata[i],nv-1);
}