Problem
This problem was asked by Facebook.
Given a circular array, compute its maximum subarray sum in O(n) time. A subarray can be empty, and in this case the sum is 0.
For example, given
[8, -1, 3, 4]
, return15
as we choose the numbers3
,4
, and8
where the8
is obtained from wrapping around.Given
[-4, 5, 1, 0]
, return6
as we choose the numbers5
and1
.
Example 1:
Input: nums = [1,-2,3,-2]
Output: 3
Explanation: Subarray [3] has maximum sum 3.
Example 2:
Input: nums = [5,-3,5]
Output: 10
Explanation: Subarray [5,5] has maximum sum 5 + 5 = 10.
Example 3:
Input: nums = [-3,-2,-3]
Output: -2
Explanation: Subarray [-2] has maximum sum -2.
what do we need?
iterate
track sum?
Last updated