是个传颂厨

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
给你一个整数list L, 如 L=[2,-3,3,50], 求L的一个连续子序列,使其和最大,输出最大子序列的和。
例如,对于L=[2,-3,3,50], 输出53(分析:很明显,该列表最大连续子序列为[3,50])
L=[2,-3,3,50,-3,67,34,2,1,73,2000,-1,13,24,352,-2]
def way(L):
    sum = 0
    ans = L[0]
    for x in L:
        sum=sum+x
        if sum<0:
            ans = max(x,ans)
            sum=0
        else:ans = max(sum,ans)
    return ans
print way(L)

 

posted on 2016-03-21 21:38  是个传颂厨  阅读(144)  评论(0编辑  收藏  举报