04给你一个整数数组 nums ,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。
代码实现如下:classSolution{public:intmaxProduct(vector<int>&nums){intn_size=nums.size();if(!nsize)returno;intdp_max=nums[0];intdp_min=nums[@];intmaxval=dp_max;for(inti=1;i<n_size;i++){inttmp_max=dp_max;dp_max=max(dp_max*nums[i],max(dp_min*nums[i],nums[i]));dpmin=mintmpmax*nums[i],min(dpmin*nums[i],nums[i]));maxval=max(maxval,dpmax);returnnmax_val;};
来自:字符串算法-字符串算法