Я пишу код для решения проблемы с разрезом Rod Cut, но во время выполнения я получал подсказки о сбоях сегментации. Я попытался отладить это с помощью gdb, и это показало проблему с функцией recRodCut. Может ли кто-нибудь помочь мне найти проблему?Как удалить сбой сегментации в этом коде
#include <stdio.h>
int recRodCut(int* arr, int n)
{
int res;
int i;
if(n==0)
{
return 0;
}
for(i = 0; i< n ; i++)
{
res = max(recRodCut(arr,n) , arr[i]+recRodCut(arr,n-i));
}
return res;
}
int max(int a, int b)
{
return (a<b)?a:b;
}
int main()
{
int value[] = {0,1,5,8,9,10,17,17,20,24,30};
int result = recRodCut(value, 4);
printf("The value is %d \n", result);
}
Проголосовал закрыть как опечатку. См. Наблюдение @ mtijanic о бесконечной рекурсии. – mah