Cod sursa(job #2370575)

Utilizator JohnnyTTache Radu Ioan JohnnyT Data 6 martie 2019 12:42:23
Problema Stramosi Scor 50
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <vector>
#include <fstream>
#include <iostream>

using namespace std;

int main(){
    int n, m, p, q;
    fstream f("stramosi.in", fstream::in), g("stramosi.out", fstream::out);
    f >> n >> m;
    vector<int> stramosi(n);
    for(int i = 0; i < n; i++){
        f >> stramosi[i];
        stramosi[i]--;
    }
    for(int z = 0; z < m; z++){
        f >> q >> p;
        q--;
        int curNode = stramosi[q];
        p--;
        while(p){
            if(curNode == -1){
                g << 0 << endl;
                curNode = -2;
                break;
            }
            curNode = stramosi[curNode];
            p--;
        }
        if(curNode != -2){
            g << curNode + 1 << endl;
        }
    }
}