Pagini recente » Cod sursa (job #240958) | Cod sursa (job #2294052) | Cod sursa (job #3139582) | Cod sursa (job #2178875) | Cod sursa (job #3198116)
#include <fstream>
using namespace std;
ifstream cin("stramosi.in");
ofstream cout("stramosi.out");
int v[250005][25];
void turip(int aux, int nr)
{
int i=(1<<19),ind=19,last=0;
while(nr)
{
if(i<=nr)
{
last=aux;
aux=v[aux][ind];
nr-=i;
}
i/=2;
ind--;
}
cout<<aux<<'\n';
}
int main()
{
int n,q,a;
cin>>n>>q;
for(int i=1;i<=n;i++)
{
cin>>a;
int aux=a;
for(int j=0;j<=20;j++)
{
v[i][j]=aux;
aux=v[aux][j];
}
}
int b;
while(q--)
{
cin>>a>>b;
turip(a,b);
}
return 0;
}