Cod sursa(job #1755788)

Utilizator VictoriaNevTascau Victoria VictoriaNev Data 11 septembrie 2016 01:10:39
Problema Stramosi Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <fstream>

using namespace std;
const int NMAX=250005;
int a[30][NMAX];
int main()
{
    ifstream in("stramosi.in");
    ofstream out("stramosi.out");
    int n, m, p, q;
    in>>n>>m;
    for(int i=1; i<=n; i++)
        in>>a[0][i];
    for(int i=1; (1<<i)<=n; i++)
        for(int j=1; j<=n; j++)
            a[i][j]=a[i-1][a[i-1][j]];
    for(int i=1; i<=m; i++)
    {
        in>>p>>q;
        for(int j=0; (1<<j)<=n; j++)
            if((1<<j) & q)
                p=a[j][p];
        out<<p<<'\n';
    }
    return 0;
}