LeetCode笔记

跳跃游戏

2018-03-20  本文已影响16人  只为此心无垠

LintCode题目地址
给出一个非负整数数组,你最初定位在数组的第一个位置。   
数组中的每个元素代表你在那个位置可以跳跃的最大长度。    
判断你是否能到达数组的最后一个位置

def canJump(self, A):
        # write your code here
        n = len(A)
        f = [False] *n
        for i in range(n):
            if i == 0:
                f[0] = True
                continue
            for j in range(i):
                #如果j位置可以到达,且j位置跳跃<=A[j]步就可以到达位置i
                if f[j] == True and A[j]+j >= i:
                    f[i] = True
                    break
                
        return f[n-1]
上一篇 下一篇

猜你喜欢

热点阅读