Итак, у меня есть следующая рекурсивная функция:
int printSeq(int last[], int n, int arr[], int longest){
if(last[longest]==longest) return arr[longest];
printf("%d ", printSeq(last, n, arr, last[longest]));
}
last - это массив с позициями, указывающими на массив.Самое длинное - текущее местоположение.
Однако, когда я запускаю его, я получаю странные значения, которых нет в массиве.Я что-то упустил?
Базовый случай - это когда последний [самый длинный] указывает на собственное местоположение