Mai intai trebuie sa te autentifici.
Cod sursa(job #2611819)
Utilizator | Data | 7 mai 2020 17:09:02 | |
---|---|---|---|
Problema | Stramosi | Scor | 0 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.56 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("stramosi.in");
ofstream out("stramosi.out");
const int N = 2500001;
const int L = 18;
int n, m, p, q, rez, i, t[L][N];
int main() {
in >> n >> m;
for (int i = 1; i <= n; i++)
in >> t[0][i]; //tatal lui i
for (int i = 1; i < L; i++)
for (int j = 1; j <= n; j++)
t[i][j] = t[i - 1][t[i - 1][j]];
while (m) {
m--;
in >> q >> p;
rez = q;
while (p) {
if (p % 2 != 0) rez = t[i][rez];
p /= 2;
i++;
}
out << rez << '\n';
}
return 0;
}