https://leetcode.cn/problems/maximum-subarray/
1
2
3
4
5
6
7
8
9
10
11
|
class Solution {
public:
int maxSubArray(vector<int>& nums) {
int ans = nums[0], cur = 0;
for (int &x : nums) {
cur = max(cur + x, x);
ans = max(ans, cur);
}
return ans;
}
};
|
1
2
3
4
5
6
7
|
class Solution:
def maxSubArray(self, nums: List[int]) -> int:
ans, cur = nums[0], 0
for x in nums:
cur = max(cur + x, x)
ans = max(ans, cur)
return ans
|
1
2
3
4
5
6
7
8
9
10
|
class Solution {
fun maxSubArray(nums: IntArray): Int {
var (ans, cur) = nums[0] to 0
for (x in nums) {
cur = maxOf(cur + x, x)
ans = maxOf(ans, cur)
}
return ans
}
}
|