题解 | #未排序数组中累加和为给定值的最长子数组长度#
未排序数组中累加和为给定值的最长子数组长度
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