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

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

http://www.nowcoder.com/practice/704c8388a82e42e58b7f5751ec943a11

利用列表的形式计算累加和,然后判断是否等于k值,等于的话范围子数组的长度

#
class Solution:
    def maxlenEqualK(self , arr , k ):
        # write code here
        l = len(arr)
        se = [0] *(l+1)
        for i in range(l):
            se[i+1] = se[i] + arr[i]
        while l >= 1:
            for i in range(l,len(arr)+1):///###这里len(arr)不能换成l,是因为重新遍历??
                if se[i] - se[i-l] == k:
                    return l
            l -=1
        return 0
全部评论

相关推荐

09-21 21:14
门头沟学院
否极泰来来来来:和他说:这里不好骂你,我们加个微信聊
点赞 评论 收藏
分享
夏日狂想曲:连体婴是这样的,不过国内还有上四休三的公司?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务