嘻嘻,这是一道典型的DP题目,但貌似网上都没有类似的题解,那兔子就来说一说吧!
黑熊过河
描述
有一只黑熊想过河,但河很宽,黑熊不会游泳,只能借助河面上的石墩跳过去,他可以一次跳一墩,也可以一次跳两墩,但是每起跳一次都会耗费一定的能量,黑熊最终可能因能量不够而掉入水中,所幸的事,有些石墩上放了一些食物,这些食物可以给黑熊增加一定的能量,问黑熊能否利用这些石墩安全的抵达对岸,若能,则计算出抵达对岸后剩余能量的最大值是多少?
输入
第一行包含两个整数P(黑熊的初始能量),Q(黑熊每次起跳时耗费的能量),(0≤P,Q≤1000);
第二行只有一个整数N(1≤N≤10^6),即河中石墩的数目;
第三行有N个整数,即每个石墩上食物的能量值ai(0≤ai≤1000)。
输出
输出文件包括一行,若黑熊能抵达对岸,输出抵达对岸后剩余能量的最大值是多少,若不能抵达对岸,则输出“NO”。
输入样例 1
12 5
5
0 5 2 0 7
输出样例 1
6
思路
入手点:
反正就是老一套的动态