连续子数组的最大乘积

class Solution {  
public:  
    int maxProduct(vector<int>& nums) {  
        int last_max = nums[0];  
        int last_min = nums[0];  
        int result = nums[0];  
        int cur_max = nums[0];  
        int cur_min = nums[0];  

        for(int i = 1; i < nums.size(); i ++)  
        {  
            cur_max = max(nums[i], max(last_max * nums[i], last_min * nums[i]));  
            cur_min = min(nums[i], min(last_max * nums[i], last_min * nums[i]));  
            result = max(result, cur_max);  
            last_max = cur_max;  
            last_min = cur_min;  
        }  

        return result;  
    }  
};  

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试

关闭