Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Solution {
- public:
- int maxProduct(vector<int>& nums) {
- int ans=-1e9,n=nums.size(),l=1,r=1;
- for(int i=0;i<n;i++){
- l=(l?l:1)*nums[i];
- r=(r?r:1)*nums[n-1-i];
- ans=max({ans,l,r});
- }
- return ans;
- }
- };
- -----------------
- class Solution {
- public:
- int maxProduct(vector<int>& nums) {
- int product = nums[0], maxProduct = product, minProduct = product;
- for(int i=1; i<nums.size(); i++){
- int tmp = max(nums[i], max(maxProduct*nums[i], minProduct*nums[i]));
- minProduct = min(nums[i], min(maxProduct*nums[i], minProduct*nums[i]));
- maxProduct = tmp;
- product = max(maxProduct, product);
- }
- return product;
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement