Cod sursa(job #2321602)

Utilizator ImbuzanRaduImbuzan Radu ImbuzanRadu Data 16 ianuarie 2019 12:47:32
Problema Stramosi Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <iostream>
#include <fstream>

using namespace std;

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

int n, m;

int stra[100][100], ar[10000];

int main()
{
    f>>n>>m;

    for(int i = 1; i <= n; i++)
    {
        f>>stra[0][i];
    }

    for(int  i = 1; (1<<i)<n;  i++)
        for(int nod = 1; nod <= n; nod++)
        {
            stra[i][nod] = stra[i-1][stra[i-1][nod]];
        }

    int nod,p;
    for(int i = 1; i <= m; i++)
    {
        f>>nod>>p;
        for(int pu=0; pu <= 20; pu++)
        {
            if((1<<pu) & p)
                nod = stra[pu][nod];
        }
        g<<nod<<'\n';
    }
    return 0;
}