#D0703. 跳一跳
跳一跳
题目描述
小明正在玩一个闯关游戏。地图上有 个平台,第 个平台都有一个高度 和一个奖励 ,如果小明跳到第 个平台就可以拿到 的奖励。
小明需要从第 个平台出发,最终到达第 个平台,为了加大难度,红红给他设置了两个限制:
- 只有当 时,才能从平台 跳到平台 (不会回头或者原地跳,往后最多只能跳到第 个平台)。
- 只有当 不超过小明的跳跃能力时,才能从平台 跳到平台 。( 表示 的绝对值,可以通过 C++ 的
abs(x)函数计算)
请回答两个问题:
- 如果小明跳跃能力无限,那么他最多能拿到多少奖励?
- 为了拿到最多的奖励,小明的跳跃能力最小是多少?
输入格式
第一行为空格隔开的两个整数:。
第二行为空格隔开的 个整数:。
第三行为空格隔开的 个整数:。
输出格式
输出两行,每行都是一个整数。分别是两个问题的答案。
10 2
1 -1 -2 -10 5 -5 -5 -5 -5 0
5 5 5 5 5 100 6 7 3 2
-6
3
样例解释 1
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | |
|---|---|---|---|---|---|---|---|---|---|---|
如果跳跃能力无限,能达成的最大奖励是:
要达成这个最大奖励,跳跃能力最小为:,途经平台是:1,3,5,7,8,10
数据规模与约定
对于 的数据,,。
- 子任务 1(30 分):保证所有平台高度都相等, 相同。
- 子任务 2(30 分):保证所有平台奖励都相同, 相同。
- 子任务 3(40 分):没有特殊限制。