Pagini recente » Cod sursa (job #1235641) | Cod sursa (job #3135930) | Cod sursa (job #1386926) | Cod sursa (job #2058921) | Cod sursa (job #426165)
Cod sursa(job #426165)
#include <fstream>
using namespace std;
int /*v[250001][10000],*/pred[250001]/*,s[250001][10000]*/;
/*void set(int x)
{
int i,j;
for (i=1;i<=v[x][0];i++)
{
for (j=1;j<=s[x][0];j++)
s[v[x][i]][j+1]=s[x][j];
pred[v[x][i]]=-1;
set(v[x][i]);
}
}*/
int stramos(int x,int a)
{
if (x==0 || a==0)
return a;
return stramos(x-1,pred[a]);
}
int main()
{
int n,m,p,q,i;
ifstream in("stramosi.in");
ofstream out("stramosi.out");
in>>n>>m;
for (i=1;i<=n;i++)
{
in>>pred[i];
/*s[i][1]=pred[i];
v[pred[i]][++v[pred[i]][0]]=i;*/
}
/*for (i=1;i<=n;i++)
if (pred[i]==0)
set(i);*/
while (m--)
{
in>>q>>p;
out<<stramos(p,q)<<"\n";
}
return 0;
}