题目
基本思路
题目大意:现在是给你一个数组,肯定能跳到最后,问你最少需要多少步。
curReach表示当前能跳到的最远距离,lastReach表示上次最远可以跳到的距离。
那么,对于每次lastReach < i 时,说明跳上一次不到i,需要count++
实现代码
class Solution:
def jump(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
lastReach,curReach = 0,0
count = 0
length = len(nums)
for i in range(length):
if lastReach < i:
lastReach = curReach
count += 1
curReach = max(curReach,nums[i]+i)
return count