Cod sursa(job #2468016)

Utilizator ViAlexVisan Alexandru ViAlex Data 5 octombrie 2019 11:42:36
Problema Stramosi Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.54 kb
#include<bits/stdc++.h>
using namespace std;

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


int val[250000];
int n,m;
int memo[250000];

void read()
{
    in>>n>>m;
    for(int i=0; i<n; i++)
        in>>val[i];
}


int dfs(int curent,int len,int src)
{
    if(len==src)
        return curent;
    if(!val[curent-1])
        return 0;
    return dfs(val[curent-1],len+1,src);
}

void solve()
{

    int a,b;
    for(int i=0; i<m; i++)
    {
        in>>a>>b;
        out<<dfs(a,0,b)<'\n';
    }

}


int main()
{
    read();
    solve();
}