華為OD機(jī)試-- 翻牌求最大分

題目
給出n個(gè)牌數(shù),在-100到100之間,求最大得分。
規(guī)則如下:連續(xù)翻牌,如果選當(dāng)前牌,則總得分等于上一次翻牌總得分加上當(dāng)前牌的數(shù)字,
如果當(dāng)前總得分小于它前三次的總得分的話,那此次不翻牌,并且總得分就等于它前三次的得分。
1到3次翻牌數(shù)如果小于0的話就取0。
例子:1,-5,-6,4,7,2,-2
說(shuō)明:
(1)1大于零 翻牌
(2)-5 加上1 小于0 不翻 結(jié)果為0
(3)-6 加上0 小于0 不翻 結(jié)果為0
(4)4 加上0 大于0(1)翻牌 結(jié)果為4
(5)7 加上4 大于0(2) 翻牌 結(jié)果為11
(6)2 加上11 大于0(3) 翻牌 結(jié)果為13
(7)-2 加上14 大于4(4)翻牌 結(jié)果為11
思路
1:這個(gè)題算是比較簡(jiǎn)單的了,第一步先求出前三個(gè)數(shù)字的和,當(dāng)做標(biāo)桿,然后連續(xù)往后遍歷判斷即可。
Java 實(shí)現(xiàn):https://renjie.blog.csdn.net/article/details/130732326
Python實(shí)現(xiàn):https://renjie.blog.csdn.net/article/details/130732340
C++ 實(shí)現(xiàn):https://renjie.blog.csdn.net/article/details/127152359
JavaScript實(shí)現(xiàn):https://renjie.blog.csdn.net/article/details/130732356
C實(shí)現(xiàn):https://renjie.blog.csdn.net/article/details/130732375