Cod sursa(job #2754003)

Utilizator DianaZaharia132nr2Zaharia Diana Cristiana DianaZaharia132nr2 Data 24 mai 2021 20:40:30
Problema Stramosi Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.75 kb
#include<bits/stdc++.h>
using namespace std;

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


int n, m;
int a[1000][250000];


int stramosii(int Q, int P)
{
    int pow, i, aux;
    aux = Q;
    while(P!= 0)
    {

        pow = 1;
        i = 0;
        while(pow * 2 <= P)
        {
            pow=pow*2;
            i++;
        }
        aux = a[i][aux];

        P=P-pow;
    }
    return aux;
}



int main()

{

    int q, p, i, j,N,M;
    f >>N>>M;
    for(j = 1; j <=N; ++j)
        f>>a[0][j];

   for(i = 1;i<= N; ++i)
        for(j = 1; j <= n; ++j)
        a[i][j] = a[i-1][a[i-1][j]];

    for( i = 1; i <= M; ++i)
    {
        f >>q>>p;
        g << stramosii(q,p) << '\n';
    }

}