Pagini recente » Cod sursa (job #2444516) | Cod sursa (job #866912) | Cod sursa (job #2273218) | Cod sursa (job #1747595) | Cod sursa (job #1649182)
#define nMax 250001
#include <fstream>
using namespace std;
ifstream x ("stramosi.in");
ofstream y ("stramosi.out");
struct trick
{
int target;
trick *next;
};
int n,m;
trick *node[nMax],*temp;
void add_path(int a, int b)
{
node[a]=new trick();
node[a]->target=b;
node[a]->next=node[b];
}
int stramos(int q, int p)
{
if(p==0)
return node[q]->target;
if(node[q]->target)
return stramos(node[q]->target,p-1);
return 0;
}
int main()
{
int i;
x>>n>>m;
int a;
for(i=1;i<=n;i++)
{
x>>a;
add_path(i,a);
}
/*
temp=new trick();
temp=node[12];
while(temp)
{
y<<temp->target<<' ';
temp=temp->next;
}
y<<'\n';
*/
int q,p;
for(i=0;i<m;i++)
{
x>>q>>p;
y<<stramos(q,p-1);
y<<'\n';
}
return 0;
}