1007 Maximum Subsequence Sum (25分)

num = int(input())
number = [int(x) for x in input().split()]
flag = True
if len([x for x in number if x >= 0]) == 0:
    flag = False
    print(0, number[0], number[-1])
sums = -1 #有可能第一個數是0
temp, tempLeft, index, right, left = 0, 0, 0, 0, 0
if flag == True:
    while(index != len(number)):
        temp = temp + number[index]
        index += 1
        if temp < 0:
            temp = 0
            tempLeft = index
        elif temp > sums:
            sums = temp
            left = tempLeft
            right = index - 1
    print(sums, number[left], number[right])

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章