53题的升级版
https://mp.csdn.net/mdeditor/84856498#
class Solution {
public int maxProduct(int[] nums) {
int[] premax=new int[nums.length];
int[] premin=new int[nums.length];
premax[0]=nums[0];
premin[0]=nums[0];
int res=nums[0];
for(int i=1;i<nums.length;i++){
premax[i]=Math.max(Math.max(premax[i-1]*nums[i],premin[i-1]*nums[i]),nums[i]);
premin[i]=Math.min(Math.min(premax[i-1]*nums[i],premin[i-1]*nums[i]),nums[i]);
res=Math.max(res,premax[i]);
}
return res;
}
}