Maximum Sum Circular Subarray
Given a circular integer array nums, find the maximum possible sum of a non-empty subarray.
A circular subarray can wrap around the end to the beginning.
Example
1,-2,3,-2
3
- The input array is
nums = [1, -2, 3, -2], and we need to find the maximum sum of a non-empty subarray. - We consider all possible subarrays, including those that wrap around the end to the beginning, and calculate their sums:
- Subarray
[1]has sum , - subarray
[-2]has sum , - subarray
[3]has sum , - subarray
[-2]has sum , - subarray
[1, -2]has sum , - subarray
[1, -2, 3]has sum , - subarray
[1, -2, 3, -2]has sum , - subarray
[-2, 3]has sum , - subarray
[-2, 3, -2]has sum , - subarray
[3, -2]has sum , - subarray
[3, -2, 1]has sum , - subarray
[-2, 1]has sum .
- Subarray
- The maximum sum of a subarray is , which is obtained from the subarray
[3]. - The final output is .
Constraints
- 1 <= len(nums) <= 3 * 10^4
- -3 * 10^4 <= nums[i] <= 3 * 10^4