此题本质上并不是一道正儿八经的动态规划题。
不需要分治,从头扫到尾,记住一些状态变量即可轻松完成。
int maxsumofSubarray(int* arr, int arrLen ) { int curSum = 0; int maxSum = 0; for (int i = 0; i < arrLen; i++) { if (curSum <= 0) { curSum = arr[i]; } else { curSum += arr[i]; } if (maxSum < curSum) { maxSum = curSum; } } return maxSum; }