Pagini recente » Borderou de evaluare (job #831221) | Cod sursa (job #2599908) | Borderou de evaluare (job #1934544) | Borderou de evaluare (job #2743372) | Cod sursa (job #3276801)
#include <fstream>
#include <vector>
using namespace std;
ifstream cin("stramosi.in");
ofstream cout("stramosi.out");
int n,q,ct,nod,x;
vector<int> v[250001];
bool ok;
void dfs(int nod)
{
if(ct==0)
{
cout<<nod<<'\n';
ok=1;
return;
}
for(auto e:v[nod])
{
ct--;
dfs(e);
}
}
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
cin>>n>>q;
for(int i=1;i<=n;i++)
{
cin>>x;
if(x!=0) v[i].emplace_back(x);
}
while(q--)
{
cin>>nod>>ct;
ok=0;
dfs(nod);
if(ok==0) cout<<0<<'\n';
}
}