题解 | #未排序正数数组中累加和为给定值的最长子数组的长度#

未排序正数数组中累加和为给定值的最长子数组的长度

http://www.nowcoder.com/practice/a4e34287fa1b41f9bd41f957efbd5dff

n, k = map(int, input().split())
arr = list(map(int, input().split()))
i, j = 0, 0
res = 0
su = 0
while i <= j < n:
    if su < k:
        su += arr[j]
        j += 1
    elif su > k:
        su -= arr[i]
        i += 1
    if su == k:
        res = max(res, j - i)
        su -= arr[i]
        i += 1
print(res)
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务