---
description: max(k,i+nums[i])
---

# leetcode55.跳跃游戏

```golang
func canJump(nums []int) bool {
    //核心思想：i为当前点，k为从索引0开始能跳的最距离，如果i>k说明当前点无法达到，反之能到达
    //遍历到最后一个点，如果能到达，说明可以到达最后一个下标
    k:=0
    for i:=0;i<len(nums);i++{
        if i>k{
            return false
        }
        k=max(k,i+nums[i])
    }
    return true
}

func max(x,y int) int{
    if x>y{
        return x
    }
    return y
}
```
