Pagini recente » Cod sursa (job #2540097) | Cod sursa (job #113752) | Cod sursa (job #2868185) | Cod sursa (job #3205602) | Cod sursa (job #1308014)
#include <fstream>
#define DIM 250011
using namespace std;
ifstream f("stramosi.in");
ofstream g("stramosi.out");
int n,m;
int p[DIM],a[33][DIM];
int main(void){
register int x,y,i,j;
f>>n>>m;
for(i=1;i<=n;i++)
f>>a[0][i];
for(i=2;i<=n;i++)
p[i]=p[i/2]+1;
for(i=1;(1<<i)<=n;i++)
for(j=1;j<=n;j++)
a[i][j]=a[i-1][a[i-1][j]];
for(i=1;i<=m;i++){
f>>x>>y;
for(;y>0;y-=(1<<p[y])) x=a[p[y]][x];
g<<x<<"\n";
}
f.close();
g.close();
return 0;
}