Pagini recente » Cod sursa (job #2063579) | Cod sursa (job #1040868) | Cod sursa (job #2419183) | Cod sursa (job #1624938) | Cod sursa (job #1518244)
#include<iostream>
#include<fstream>
int D[19][250001], N, M, i, j, e;
int main()
{
std::ifstream f("stramosi.in");
std::ofstream g("stramosi.out");
f >> N >> M;
for (i = 1;i <= N;++i)
f >> D[0][i];
for (i = 1;i <= 18;++i)
for (j = 1;j <= N;++j)
D[i][j] = D[i - 1][D[i - 1][j]];
int Q, P, S;
for (i = 1;i <= M;++i)
{
f >> Q >> P;
e = Q;
for (j = 0;j <= 18;++j, P >>= 1)
if (P & 1)
e = D[j][e];
g << e << '\n';
}
return 0;
}