题干
解法:DP 动态规划
class Solution {
public:
int maxSubArray(vector<int>& nums) {
std::vector<int> DP;
DP.push_back(nums[0]);
for(int i = 1; i < nums.size(); ++i){
int pos = DP[i-1] + nums[i];
if(pos > nums[i]){
DP.push_back(pos);
}
else{
DP.push_back(nums[i]);
}
}
int res = INT_MIN;
for(int i = 0; i < DP.size(); ++i){
if(DP[i] > res){
res = DP[i];
}
}
return res;
}
};
秒了秒了 嘻嘻