Pagini recente » Cod sursa (job #3250090) | Cod sursa (job #713609) | Cod sursa (job #836244) | Cod sursa (job #2667722) | Cod sursa (job #502472)
Cod sursa(job #502472)
#include <fstream>
#define mmax 18
#define nmax 250000
using namespace std;
ifstream f("stramosi.in");
ofstream g("stramosi.out");
int a[mmax][nmax+5];
int p, q, n, m, nr;
int main()
{
int i, j;
f>>n>>m;
for(i=1;i<=n;++i) f>>a[0][i];
for(i=1;i<=mmax;++i)
for(j=1;j<=n;++j)
a[i][j]=a[i-1][a[i-1][j]];
for(i=1;i<=m;++i)
{
f>>q>>p;
while(p)
{
if(p%2) q=a[nr][q];
++nr;
p/=2;
}
nr=0;
g<<q<<"\n";
}
return 0;
}