Cod sursa(job #2047409)

Utilizator CriogeniXBociat Daniel Tiberiu CriogeniX Data 24 octombrie 2017 20:12:06
Problema Stramosi Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <fstream>
using namespace std;

ifstream fin("stramosi.in");
ofstream fout("stramosi.out");

const int NMax = 250000;
int N,M;
int Ancestor[NMax + 5];

void Read()
{
    fin >> N >> M;

    for(int i = 1; i <= N; ++i)
      fin >> Ancestor[i];
}

int FindAncestor(int Q, int P)
{
  while(P--)
        Q = Ancestor[Q];
  return Q;
}

void SolveandPrint()
{
  while(M--)
    {
      int Q,P;
      fin >> Q >> P;
      fout << FindAncestor(Q,P) << "\n";
    }
}

int main()
{
    Read();
    SolveandPrint();
    return 0;
}