Cod sursa(job #2246651)

Utilizator iulius510iulius alexandru iulius510 Data 27 septembrie 2018 12:17:08
Problema Stramosi Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include<iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream f("stramosi.in");
ofstream g("stramosi.out");
int N,M,x,y,d[250001][18],p;
int main()
{   f>>N>>M;
    for(int i=1;i<=N;i++)
    {
        f>>d[i][0];x=d[i][0];
        if(x)
        for(int j=0;j<=17;j++)
        {
          d[i][j+1]=d[x][j];
          x=d[x][j];
        }

    }
    for(int i=1;i<=M;i++)
    {
        f>>x>>y; p=x;
        for(int j=18;j>=0;j--)
          if(y&(1<<j))
            p=d[p][j];
        g<<p<<"\n";


    }

    return 0;
}