Cod sursa(job #2520052)

Utilizator alexdumitrescuDumitrescu George Alex alexdumitrescu Data 8 ianuarie 2020 20:33:40
Problema Stramosi Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <bits/stdc++.h>
#define Nmax 250005

using namespace std;
ifstream fin ("stramosi.in");
ofstream fout ("stramosi.out");
int t[18][Nmax], n, q, x, y;
int main()
{
    fin >> n >> q;
    for(int i=1;i<=n;i++)
        fin >> t[0][i];

    for(int j=1;j<=17;j++)
        for(int i=1;i<=n;i++)
            t[j][i]=t[j-1][t[j-1][i]];

    for(int i=1;i<=q;i++)
    {
        fin >> x >> y;
        for(int j=17;j>=0;j--)
            if((1<<j)<=y)
                {
                    y=y-(1<<j);
                    x=t[j][x];
                }
        fout << x << '\n';
    }
    return 0;
}