Pagini recente » Istoria paginii utilizator/kanyjmk | Monitorul de evaluare | Cod sursa (job #495200) | Istoria paginii utilizator/maraneagu | Cod sursa (job #875087)
Cod sursa(job #875087)
#include <iostream>
#include <vector>
#include <fstream>
using namespace std;
ifstream in ("stramosi.in");
ofstream out ("stramosi.out");
vector<vector<int> > v;
void stramos(int k){
int i = v[k][0],j;
if(i == 0)
return;
if(v[i][0] == 0)
{
return;
}
for(j=0;j<v[i].size();j++)
{
v[k].push_back(v[i][j]);
}
}
int main (){
int n,m,i,j,t;
in>>n>>m;
v.resize(n+1);
for(i=1;i<n+1;i++){
v[i].resize(1);
in>>v[i][0];
}
for(j=1;j<n+1;j++)
if(v[j][0] != 0)
stramos(j);
//for(i=1;i<n+1;i++)
//{
//for(j=0;j<v[i].size();j++)
//cout<<v[i][j]<<" ";
//cout<<"\n";
//}
for(i=0;i<m;i++)
{
in>>j>>t;
if(t-1<v[j].size())
cout<<v[j][t-1]<<"\n";
else
cout<<0<<"\n";
}
}