题目:
解答:
1 class Solution { 2 public: 3 int maxProduct(vector<int>& nums) 4 { 5 int max = INT_MIN; 6 int imax = 1; 7 int imin = 1; 8 9 for (int i = 0;i < nums.size(); i++) 10 { 11 if (nums[i] < 0) 12 { 13 std::swap(imax, imin); 14 } 15 16 imax = std::max(imax * nums[i], nums[i]); 17 imin = std::min(imin * nums[i], nums[i]); 18 19 max = std::max(max, imax); 20 } 21 22 return max; 23 } 24 };
原文:https://www.cnblogs.com/ocpc/p/12832954.html