LeetCode152 乘积最大子数组
同时统计min和max即可考虑正负关系
class Solution(object):
def maxProduct(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
f_min, f_max, l = [nums[0]], [nums[0]], len(nums)
for i in range(1, l):
f_max.append(max(nums[i], nums[i] * f_max[-1], nums[i] * f_min[-1]))
f_min.append(min(nums[i], nums[i] * f_max[-2], nums[i] * f_min[-1]))
# print(f_max)
# print(f_min)
return max(f_max)
浙公网安备 33010602011771号