Pagini recente » Cod sursa (job #2727236) | Cod sursa (job #2978446) | Cod sursa (job #1815687) | Cod sursa (job #255606) | Cod sursa (job #927185)
Cod sursa(job #927185)
#include<fstream>
#include<vector>
using namespace std;
int t[250005],q,p,n,m,acum;
vector <int> a[250005];
int main(){
ifstream in("stramosi.in"); ofstream out("stramosi.out");
in>>n>>m;
for(int i=1;i<=n;++i) in>>t[i];
for(int i=1;i<=n;++i){
a[i].push_back(t[i]);
acum=t[i];
while(acum!=0){
a[i].push_back(t[acum]);
acum=t[acum];
}
}
for(;m;--m){
//Care este al P-lea stramos al membrului cu numarul Q?
in>>q>>p;
if(a[q].size()<p) out<<"0\n";
else out<<a[q][p-1]<<'\n';
}
return 0;
}