赞
踩
■ 题目描述
给出n个牌数,在-100到100之间,求最大得分。
规则如下:连续翻牌,如果选当前牌,则总得分等于上一次翻牌总得分加上当前牌的数字,
如果当前总得分小于它前三次的总得分的话,那此次不翻牌,并且总得分就等于它前三次的得分。
1到3次翻牌数如果小于0的话就取0。
例子:1,-5,-6,4,7,2,-2
(1)1大于零 翻牌
(2)-5 加上1 小于0 不翻 结果为0
(3)-6 加上0 小于0 不翻 结果为0
(4)4 加上0 大于0(1)翻牌 结果为4
(5)7 加上4 大于0(2) 翻牌 结果为11
(6)2 加上11 大于0(3) 翻牌 结果为13
(7)-2 加上14 大于4(4)翻牌 结果为11
n='12,-5,-6,4,-20,2,-2' if __name__ == '__main__': n = list(map(int,n.split(","))) if sum(n[:3])<0: num =0 else : num = sum(n[:3]) for i in range(3,len(n)) : tmp = num+n[i] # print('num: ',num,end=" , ") # print("i : ",n[i],end=' , ') # print('tmp: ',tmp) if tmp>num: num =tmp print(num)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。