Cod sursa(job #3319614)

Utilizator ana.veronica13Ana Veronica Draghici ana.veronica13 Data 2 noiembrie 2025 10:34:59
Problema Stramosi Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <bits/stdc++.h>

using namespace std;

int dp[21][300005];

int main(){
    ifstream cin("stramosi.in");
    ofstream cout("stramosi.out");
    int n, m, i, j, p, q, bit;
    cin >> n >> m;
    for( i = 1; i <= n; i++ ) 
        cin >> dp[0][i];
    for( i = 1; i <= 20; i++)
        for( j = 1; j <= n; j++ ) 
            dp[i][j] = dp[i - 1][dp[i - 1][j]];
    for( i = 1; i <= m; ++i) {
        cin >> q >> p;
        for ( bit = 0; bit <= 20; ++bit) {
            if (p & (1 << bit)) {
                q = dp[bit][q];
            }
        }
        cout << q << '\n';
    }
}