- class Solution:
- def canJump(self, nums: List[int]) -> bool:
- if len(nums)==1:
- return True
- cover=0
- i=0
- while i<=cover:
- cover=max(cover,nums[i]+i)
- if cover>=len(nums)-1:
- return True
- i+=1
- return False
求覆盖范围
- class Solution:
- def jump(self, nums: List[int]) -> int:
- if len(nums)==1:
- return 0
- res=0
- cur=0
- ne=0
- for i in range(len(nums)):
- ne=max(ne,nums[i]+i)
- if i==cur:
- res+=1
- cur=ne
- if ne>=len(nums)-1:
- return res
当前要走,接下来要走