Pagini recente » Cod sursa (job #2032653) | Cod sursa (job #2545266) | Cod sursa (job #2123595) | Autentificare | Cod sursa (job #2321619)
#include <fstream>
int g[25][250001], n, m, i, j, k, p, q, e{};
int main() {
std::ifstream o{"stramosi.in"};
o >> n >> m;
for (i = 1; i <= n; ++i)
o >> g[0][i];
for (k = 1; (1 << k) <= n; ++k)
for (j = 1; j <= n; ++j)
g[k][j] = g[k - 1][g[k - 1][j]];
std::ofstream s{"stramosi.out"};
for (i = 1; i <= m; ++i) {
o >> q >> p;
while (p) {
if (p & 1)
q = g[e][q];
++e;
p >>= 1;
}
s << q << '\n';
}
}