[LeetCode] Maximum Size Subarray Sum Equals k 最大子数组之和为k
[LeetCode] Maximum Size Subarray Sum Equals k 最大子数组之和为k
class Solution(object):
def maxSubArrayLen(self, nums, k):
cursum = 0; res = 0
dic = {}
for i in range(len(nums)):
cursum += nums[i]
if cursum == k:
res = i + 1
# 如果存在差,则说明构成了和为给定值的区间
elif cursum - k in dic:
res = max(res, i - dic[cursum - k])
# 记录当前和的下标
if cursum not in dic:
dic[cursum] = i
return res
关注公众号:数据结构与算法那些事儿,每天一篇数据结构与算法

浙公网安备 33010602011771号