《python算法与数据结构2000讲》403. 青蛙过河
- 标签:数组、动态规划
- 难度:困难
题目大意
描述:一只青蛙要过河,这条河被等分为若干个单元格,每一个单元格内可能放油一块石子(也可能没有)。青蛙只能跳到有石子的单元格内,不能跳到没有石子的单元格内。
现在给定一个严格按照升序排序的数组 stones
,其中 stones[i]
代表第 i
块石子所在的单元格序号。默认第 0
块石子序号为 0
(即 stones[0] == 0
)。
开始时,青蛙默认站在序号为 0
石子上(即 stones[0]
),并且假定它第 1
步只能跳跃 1
个单位(即只能从序号为 0
的单元格跳到序号为 1
的单元格)。
如果青蛙在上一步向前跳跃了 k
个单位,则下一步只能向前跳跃 k - 1
、k
或者