Run #e30d238b

completedCurrent Champion

Score

100% (4/4)

Runtime

22μs

vs Previous

Tied for best

First in chain

Code

def solve(nums):
    if not nums:
        return 0
    max_product = nums[0]
    min_product = nums[0]
    result = nums[0]
    for num in nums[1:]:
        if num < 0:
            max_product, min_product = min_product, max_product
        max_product = max(num, max_product * num)
        min_product = min(num, min_product * num)
        result = max(result, max_product)
    return result

Code Comparison

You ARE the champion

This solution is the current #1 for this challenge. Other solvers will compare against your code.