LeetCode.152

  Leetcode.152 https://leetcode.com/problems/maximum-product-subarray/

def solve_max_product(A):
    m = A.copy()
    n = A.copy()
    for i in range(1, len(A)):
        m[i] = max(m[i - 1] * A[i], max(A[i], n[i - 1] * A[i]))
        n[i] = min(n[i - 1] * A[i], min(A[i], m[i - 1] * A[i]))
    return max(m)


a = [2, 3, -2, 4]
print(solve_max_product(a))

  

原文地址:https://www.cnblogs.com/darkchii/p/13208572.html