Pagini recente » Cod sursa (job #2411873) | Cod sursa (job #570097) | Cod sursa (job #301536) | Cod sursa (job #2916546) | Cod sursa (job #969324)
Cod sursa(job #969324)
#include <cstdio>
#include <vector>
#include <cstring>
#define dim 250001
using namespace std;
vector <int> v[dim];
int n, m, i, p, q, x;
bool viz[dim];
int dfs(int p, int q)
{
for(int i=0;i<v[q].size();++i)
if(!viz[v[q][i]])
{
viz[v[q][i]]=1;
if(p>=1)
return dfs(p-1, v[q][i]);
else return q;
}
}
int main()
{
freopen("stramosi.in", "r", stdin);
freopen("stramosi.out", "w", stdout);
scanf("%d %d", &n, &m);
for(i=1;i<=n;i++)
{
scanf("%d", &x);
v[i].push_back(x);
}
for(i=1;i<=m;i++)
{
scanf("%d %d", &q, &p);
memset(viz, 0, sizeof(viz));
printf("%d\n", dfs(p, q));
}
return 0;
}