Cod sursa(job #3301690)

Utilizator Tudor_CCTudor Cocu Tudor_CC Data 29 iunie 2025 09:45:10
Problema Stramosi Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <bits/stdc++.h>

using namespace std;

int dp[20][250055];

int main()
{
    ifstream cin("stramosi.in");
    ofstream cout("stramosi.out");
    int n,m;
    cin>>n>>m;
    for(int i=1;i<=n;++i)
    {
        cin>>dp[0][i];
    }
    for(int p=1;p<20;++p)
    {
        for(int i=1;i<=n;++i)
        {
            dp[p][i]=dp[p-1][dp[p-1][i]];
        }
    }
    for(int i=1;i<=m;++i)
    {
        int c=-1,nd,pr;
        cin>>nd>>pr;
        while(pr>0)
        {
            ++c;
            if(pr%2==1)
            {
                nd=dp[c][nd];
            }
            pr/=2;
        }
        cout<<nd<<"\n";
    }
    return 0;
}