Pagini recente » Cod sursa (job #2379936) | Cod sursa (job #2582257) | Cod sursa (job #374457) | Cod sursa (job #1482102) | Cod sursa (job #2917539)
// AS 1
#include <iostream>
#include <fstream>
using namespace std;
#define M 2500001
ifstream f("stramosi.in");
ofstream g("stramosi.out");
int a[20][M];
int main()
{
int n,m,i,j,s,q,p,put,ex;
f>>n>>m;
for(i=1;i<=n;i++)
{
f>>a[1][i];
}
for(i=2;i<=19;i++)
{
for(j=1;j<=n;j++)
{
s=a[i-1][j];
a[i][j]=a[i-1][s];
}
}
for(i=1;i<=m;i++)
{
f>>q>>p;
while(p>0)
{
put=1;
ex=0;
while(put*2<p)
{
put=put*2;
ex++;
}
q=a[ex+1][q];
p=p-put;
}
g<<q<<"\n";
}
return 0;
}