Pagini recente » Cod sursa (job #432789) | Cod sursa (job #3127918) | Cod sursa (job #2036721) | Cod sursa (job #2682263) | Cod sursa (job #973883)
Cod sursa(job #973883)
#include <cstdio>
#include <vector>
#include <cstring>
#define dim 250001
using namespace std;
vector <int> v[dim];
int n, m, i, p, q, x, k;
bool viz[dim];
int dfs(int q)
{
p--;
for(int i=0;i<v[q].size();++i)
if(viz[v[q][i]]!=k)
{
viz[v[q][i]]=k;
if(p>=1)
return dfs(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);
p++; k++;
printf("%d\n", dfs(q));
}
return 0;
}