zoukankan      html  css  js  c++  java
  • python 小练习4

    给你一个整数list L, 如 L=[2,-3,3,50], 求L的一个连续子序列,使其和最大,输出最大子序列的和。
    例如,对于L=[2,-3,3,50], 输出53(分析:很明显,该列表最大连续子序列为[3,50]).

    我个人想法比较简单啦,只是按顺序遍历列表
    AC1
    l=[]
    maxL = -1000
    L = [2,-3,3,50]
    for i in range(len(L)):
        toto = 0
        for j in range(i,len(L),1):
            toto = toto+L[j]
            if maxL<toto:
                maxL = toto
        l.append(maxL)
    print(max(l))

    AC2
    网上抄了一段别人的代码,其思想是把各个点孤立起来,如果前面数之和为0就把前面数全舍去。
    now = 0
    sum = 0
    for x in L:
    now +=x
    if now>sum:
    sum = now
    if now<0:
    now = 0
    print(sum)
     
  • 相关阅读:
    Python_堡垒机开发基础
    用haslib给字符加密
    python学习(集合)
    编码
    小练习03
    python学习(字典)
    小练习02
    python学习(列表,元祖)
    小练习
    python学习
  • 原文地址:https://www.cnblogs.com/cunyusup/p/7146896.html
Copyright © 2011-2022 走看看