#c #data-structures
#c #структуры данных
Вопрос:
Задача состоит в том, чтобы ввести серию чисел, представляющих родительский узел соответствующих индексированных узлов на основе 0 (если число равно -1, то это корень дерева) и вывести высоту дерева. Написал следующий код
#include <bits/stdc .h>
using namespace std;
void ranking( int i, int a, vector <int> amp;parent, vector <int> amp;rank)
{
if(rank[i] 1 > rank[a])
{
rank[a] = rank[i] 1;
if(parent[a]!= -1)
{
ranking(a, parent[a], parent, rank);
}
}
}
int main()
{
int n;
cin >> n;
int a;
vector <int> parent(n);
vector <int> rank(n, 0);
for ( int i=0; i<n; i )
{
cin>> parent[i];
if(parent[i] < 0)
a=i;
}
for ( int i=0; i<n; i )
{
ranking(i, parent[i], parent, rank);
}
cout << rank[a] 1<< endl;
return 0;
}
Код работает правильно в моей системе, но показывает неизвестный сигнал 6 на Coursera grader. Пожалуйста, помогите мне понять, что здесь может быть не так, я не имею большого представления о том, как программы обрабатывают память