class Solution {
public:
int maxProduct(vector<int>& nums)
{
const int size=nums.size();
if(size==0)
return 0;
int maxLast=nums[0];
int minLast=nums[0];
int maxCur=nums[0];
int minCur=nums[0];
int maxP=nums[0];
for(int i=1;i<size;++i)
{
maxCur=max(max(minLast*nums[i],maxLast*nums[i]),nums[i]);
minCur=min(min(minLast*nums[i],maxLast*nums[i]),nums[i]);
maxP=max(maxP,maxCur);
maxLast=maxCur;
minLast=minCur;
}
return maxP;
}
};
Maximum Product Subarray

最新推荐文章于 2019-09-26 09:33:48 发布
