Pagini recente » Cod sursa (job #699553) | Utilizatori inregistrati la Summer Challenge 2020 | Cod sursa (job #1988110) | Cod sursa (job #2311662) | Cod sursa (job #3249171)
#include<iostream>
#include<fstream>
using namespace std;
int n, m;
int* stramosi;
int** intrebari;
int gasireStramos(int p, int stramosActual, int kStramos);
int main() {
ifstream fin("stramosi.in");
ofstream fout("stramosi.out");
fin >> n >> m;
stramosi = new int[n];
intrebari = new int* [m];
for (int i = 1; i <= m; i++) {
intrebari[i] = new int[2];
}
for (int i = 1; i <= n; ++i) {
fin >> stramosi[i];
}
for (int i = 1; i <= m; ++i) {
fin >> intrebari[i][1] >> intrebari[i][2];
}
for (int i = 1; i <= m; i++) {
fout << gasireStramos(intrebari[i][2], intrebari[i][1], 0) << endl;
}
fin.close();
return 0;
}
int gasireStramos(int p, int stramosActual, int kStramos) {
if (kStramos == p) {
return stramosActual;
}
else if (kStramos != p && stramosi[stramosActual] != 0) {
gasireStramos(p, stramosi[stramosActual], ++kStramos);
}
return 0;
}