class Solution {
public:
int maxSubArray(vector<int>& nums) {
if(nums.size()==1) return nums[0];
vector<int> v;
int sum = 0;
for(int i = 0;i < nums.size();i++)
{
sum += nums[i];
v.push_back(sum);
}
//结合股票最大利益那题
int ans = -10000;
int lowest = v[0];
for(int i = 1; i < v.size(); i++)//假设当天卖
{
lowest = min(lowest,v[i-1]);//记录当天之前的最低价
ans = max(ans,lowest);
ans = max(ans,v[i]-lowest);
ans = max(ans,v[i]);
}
return ans;
}
};