卖萌的弱渣

I am stupid, I am hungry.

Jump Game

Given an array of non-negative integers, you are initially positioned at the first index of the array.

Each element in the array represents your maximum jump length at that position.

Determine if you are able to reach the last index.

Example

A = [2,3,1,1,4], return true.

A = [3,2,1,0,4], return false.

Solution

  • index_true: current reachable index
  • if nums[i] + i > index_true, then index_true = i
(Jump-Game.py) download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class Solution(object):
    def canJump(self, nums):
        """
        :type nums: List[int]
        :rtype: bool
        """
        #index_true: current reachable index.
        if not nums or len(nums) == 0:
            return False

        index_true = len(nums)-1
        for i in range(len(nums)-1,-1,-1):
            if nums[i]+i >= index_true:
                index_true = i
        if index_true == 0:
            return True
        else:
            return False