Advertisement
smj007

Untitled

Feb 17th, 2024
1,180
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.51 KB | None | 0 0
  1. class Solution:
  2.     def maxProduct(self, nums: List[int]) -> int:
  3.        
  4.         max_prod_prev = 1
  5.         min_prod_prev = 1
  6.         max_so_far = -math.inf
  7.  
  8.         for n in nums:
  9.  
  10.             max_prod_ending_here = max(n, max_prod_prev*n, min_prod_prev*n)
  11.             min_prod_ending_here = min(n, min_prod_prev*n, max_prod_prev*n)
  12.             max_prod_prev, min_prod_prev = max_prod_ending_here, min_prod_ending_here
  13.             max_so_far = max(max_so_far, max_prod_ending_here)
  14.  
  15.         return max_so_far
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement