2025-11-27 17:52:11 +0300 MSK
Maximum Subarray Sum With Length Divisible by K
Links
Code
class Solution:
def maxSubarraySum(self, nums: List[int], k: int) -> int:
n = len(nums)
prefixSum = 0
maxSum = -sys.maxsize
kSum = [sys.maxsize // 2] * k
kSum[k - 1] = 0
for i in range(n):
prefixSum += nums[i]
maxSum = max(maxSum, prefixSum - kSum[i % k])
kSum[i % k] = min(kSum[i % k], prefixSum)
return maxSum