Trace nums = [3, -1, 2, -1].
totalSum = 3. Run Kadane's for max: subarrays sums go 3, 2, 4, 3. maxKadane = 4 (subarray [3, -1, 2]).
Run Kadane's for min: running min goes 3, -1, -1, -1. minKadane = -1 (just the element -1).
Wrapping case: totalSum - minKadane = 3 - (-1) = 4. Answer: max(4, 4) = 4.
Now try nums = [5, -3, 5]. totalSum = 7. maxKadane = 5. minKadane = -3. Wrapping: 7 - (-3) = 10. Answer: max(5, 10) = 10.
Single pass through the array: time. Only tracking a few variables: space.