|
|
本帖最后由 jerryxjr1220 于 2017-12-5 21:17 编辑
第四届鱼C论坛精英挑战赛即将回归咯!为了增加趣味性,本届仍然延续“新玩法”-- “押宝玩法”,“竞猜玩法”和“擂主玩法”。
同时,根据以往鱼油的反馈,精英赛题目普遍偏难,所以参与的鱼油相对较少。为了提高大家的参与度,本届挑战赛会大幅降低难度,使大部分鱼油都能参赛。同时,会增设一、二、三名奖励,第一名奖励50鱼币,第二名30鱼币,第三名20鱼币。
新玩法规则:
1. 押宝玩法:由于押宝玩法参与人数很少,故暂停押宝。后续有改进玩法,会再公布。
2. 竞猜玩法:直接在比赛帖的下方进行投票,凡事“竞赛”获胜者,将奖励5鱼币。竞猜无门槛,人人都可以参与。竞猜以后,请在本帖留个言,方便领取奖励。
3. 擂主玩法:上一期挑战成功的鱼油成为挑战赛的擂主,擂主有优先权提议下一期的赛题,一届挑战赛共分5期,同一届中当擂主最长的鱼油有额外奖励。
本期题目: 可收集的最大雨水量
有一片高低起伏的洼地,洼地的海拔高度用一个列表表示,例如:[0,1,0,2,1,0,1,3,2,1,2,1],其中每个数值代表一小块洼地的高度,每一小块洼地的宽度都是1,在洼地的凹槽处可以储存雨水,如图中蓝色部分表示可收集的雨水,黑色部分为洼地的泥土。
在这样一片洼地中,最大可收集的雨水量是6,所以程序应当返回6,若无法收集雨水,则返回0.
求给定列表中可收集的最大雨水量。
- def max_rainwater(list_of_number):
- '''your code here'''
- return result_of_max_rainwater
复制代码
要求: 结果正确,程序效率高,代码简洁
注:给定的列表长度可能会达到1000或以上,请注意运算效率
截止日期: 12月4日24时
本期擂主: gunjang 由于本期只有算法题,所以就不给选择了
@小甲鱼 @冬雪雪冬 @~风介~ @SixPy
我用Excel写了个算法,画了张图表,希望给大家一些思路。
提供几组测试数据及答案,可以自行对照:
11 20 62 6 15 87 27 50 98 52 55 16 48 38 80 80 85 80 7 58 52 4 68 99 29 42 2 1 61 88 #答案1154
82 64 94 44 8 56 31 29 37 34 54 66 14 43 82 96 44 60 62 70 26 56 60 61 4 74 32 6 77 51 #答案1017
6 53 57 39 90 87 28 95 15 6 63 8 28 93 86 56 28 93 34 71 87 31 67 87 70 2 34 27 6 76 #答案923
竞猜:回答正确的参赛者的人数 |
|