Răspuns:
#include <iostream>
using namespace std;
int f(int[], int, int, int);
int f2(int, int);
int main() {
int arr[] = { 10,1,3,4,8,12,1,11,6 };
cout << f(arr, 1, 9, -10);
return 0;
}
int f(int arr[], int i, int n, int p) {
if (i == n) return 0;
int n1 = f(arr, i + 1, n, p);
int n2 = 0;
if (p + 1 != i) n2 = f(arr, i + 1, n, i) + arr[i];
return f2(n1, n2);
}
int f2(int a, int b) {
if (a > b) return a;
return b;
}
Returnează 28