动态规划(c++)
一刷打卡
#include<iostream>
#define INT_MAX 0x7fffffff
#define INT_MIN 0x80000000
using namespace std;
int max_arr(int* arr, int n) {
int* max1 = new int[n];
int max_n = INT_MIN;
max1[0] = INT_MIN;
for (int i = 1; i <= n; i++){
max1[i] = max( max1[i-1] + arr[i] , arr[i]);
max_n = max(max_n,max1[i]);
}
return max_n;
}
int main() {
int n;
int* arr;
cin >> n;
arr = new int[n];
for (int i = 1; i <= n; i++) {
cin >> arr[i];
}
cout << max_arr(arr, n) << endl;
return 0;
}