Nu aveti permisiuni pentru a descarca fisierul grader_test20.ok
Cod sursa(job #3282302)
Utilizator | Data | 4 martie 2025 22:44:58 | |
---|---|---|---|
Problema | Stramosi | Scor | 80 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.67 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("stramosi.in");
ofstream fout ("stramosi.out");
const int nmax=1e5+5;
int n, m, dp[25][nmax];
int main()
{
fin >> n >> m;
for (int i=1; i<=n; i++)
fin >> dp[0][i];
for (int i=1; (1<<i)<=n; i++)
{
for (int j=1; j<=n; j++)
dp[i][j]=dp[i-1][dp[i-1][j]];
}
for (int i=1; i<=m; i++)
{
int x, k;
fin >> x >> k;
for (int j=20; j>=0; j--)
{
if ((1<<j)<=k)
{
k-=(1<<j);
x=dp[j][x];
}
}
fout << x << '\n';
}
return 0;
}