Cod sursa(job #2706687)

Utilizator maco1503Macovei Teodor-Andrei maco1503 Data 15 februarie 2021 17:10:59
Problema Stramosi Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <bits/stdc++.h>
#define rpd ios_base :: sync_with_stdio(0); cin.tie(0);
#define ll long long
#define fs first
#define sc second
#define pb push_back
#define mod 666013
#define NMAX 100000 + 100
using namespace std;

ofstream out( "stramosi.out");
ifstream in( "stramosi.in" );

int dp[25][250005];



main()
{
    rpd;
    int m,n;
    in>>n>>m;
    for(int i=1;i<=n;i++)
    {
        in>>dp[0][i];
    }
    for(int i=1;i<=18;i++)
    {
        for(int j=1;j<=n;j++)
            dp[i][j]=dp[i-1][dp[i-1][j]];
    }
    while(m--)
    {
        int a,b;
        in>>a>>b;
        for(int i=0;i<=18;i++)
            if((1<<i)&b)
            a=dp[i][a];
        //if(a==0)a=-1;
        out<<a<<'\n';
    }

}