From ecb57401da5327fe4e16a84dfadd766f39df15de Mon Sep 17 00:00:00 2001 From: Krisi Date: Sun, 25 Aug 2019 13:26:42 +0900 Subject: [PATCH] create Solution.py --- .../0152.Maximum Product Subarray/Solution.py | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 solution/0152.Maximum Product Subarray/Solution.py diff --git a/solution/0152.Maximum Product Subarray/Solution.py b/solution/0152.Maximum Product Subarray/Solution.py new file mode 100644 index 0000000000000..9c56edf2710b2 --- /dev/null +++ b/solution/0152.Maximum Product Subarray/Solution.py @@ -0,0 +1,21 @@ + +# Beats 88% in python. +class Solution(object): + def maxProduct(self, nums): + """ + :type nums: List[int] + :rtype: int + """ + if not nums: + return 0 + localMin = localMax = maxi = nums[0] + + for i in range(1, len(nums)): + if nums[i] < 0: + localMin, localMax = localMax, localMin + + localMin = min(nums[i], localMin * nums[i]) + localMax = max(nums[i], localMax * nums[i]) + maxi = max(localMax, maxi) + + return maxi \ No newline at end of file