Pagini recente » Cod sursa (job #1775670) | Cod sursa (job #2923733) | Cod sursa (job #1315380) | Cod sursa (job #1784858) | Cod sursa (job #374712)
Cod sursa(job #374712)
#include<iostream>
#include<list>
#define NMAX 250001
using namespace std;
FILE *fin=freopen("stramosi.in","r",stdin);
FILE *fout=freopen("stramosi.out","w",stdout);
int n,m;
list<int> l1[NMAX];
int main()
{
int i,x,p,q;
cin>>n>>m;
for(i=1;i<=n;i++)
{
cin>>x;
if(x)
{l1[i].push_back(x);}
}
for(i=1;i<=m;i++)
{
cin>>q>>p;
int k=0;
int nod=q;
if(l1[nod].empty()) nod=0;
while(k<p && !l1[nod].empty())
{
nod=l1[nod].front();
k++;
if(l1[nod].empty() && k<p) nod=0;
}
cout<<nod<<"\n";
}
return 0;
}