Pagini recente » Cod sursa (job #608554) | Cod sursa (job #523115) | Cod sursa (job #360774) | Cod sursa (job #556595) | Cod sursa (job #2468017)
#include<bits/stdc++.h>
using namespace std;
ifstream in("stramosi.in");
ofstream out("stramosi.out");
int val[250000];
int n,m;
int memo[250000];
void read()
{
in>>n>>m;
for(int i=0; i<n; i++)
in>>val[i];
}
int dfs(int curent,int len,int src)
{
if(len==src)
return curent;
if(!val[curent-1])
return 0;
return dfs(val[curent-1],len+1,src);
}
void solve()
{
int a,b;
for(int i=0; i<m; i++)
{
in>>a>>b;
out<<dfs(a,0,b)<<'\n';
}
}
int main()
{
read();
solve();
}