Pagini recente » Cod sursa (job #1218546) | Cod sursa (job #2073713) | Cod sursa (job #82987) | Cod sursa (job #2331829) | Cod sursa (job #1453664)
#define _CRT_SECURE_NO_DEPRECATE
#include <stdio.h>
#include <stdlib.h>
#define MAXN 250000
using namespace std;
int N, M, A[20][MAXN];
int main(){
freopen("stramosi.in", "r", stdin);
freopen("stramosi.out", "w", stdout);
scanf("%d %d", &N, &M);
for (int i = 1; i <= N; ++i)
scanf("%d", &A[0][i]);
for (int i = 1; (1 << i) <= N; ++i)
for (int j = 1; j <= N; ++j)
A[i][j] = A[i - 1][A[i - 1][j]];
while (M--){
int n, Q, i;
scanf("%d %d", &n, &Q);
while (Q){
for (i = 0; (1 << i) <= Q; ++i);
--i, Q -= (1 << i);
n = A[i][n];
}
printf("%d\n", n);
}
return 0;
}