题解 | #跳跃游戏(一)#

跳跃游戏(一)

https://www.nowcoder.com/practice/07484f4377344d3590045a095910992b?tpId=230&tqId=2358425&ru=/exam/oj&qru=/ta/dynamic-programming/question-ranking&sourceUrl=%2Fexam%2Foj%3Fpage%3D1%26tab%3D%25E7%25AE%2597%25E6%25B3%2595%25E7%25AF%2587%26topicId%3D230

import sys

n = int(input())
numbers= list(map(lambda x :int(x),input().split()))


def jump(n,numbers):
    maxpostion=0
    
    for i in range(n):
        maxpostion =max(maxpostion,numbers[i]+i)
       #当前元素能够到达的最远的距离大于n-1时说明可以到达最远的元素
        if maxpostion >=n-1:
            print("true")
            return True
#当前元素能够到达的最远的距离比i小,或者和i相等,说明没有元素能够跳过这个元素到达最大的值
        elif maxpostion<= i:
            print("false")
            return False
    
jump(n,numbers)

全部评论

相关推荐

黑皮白袜臭脚体育生:简历条例统一按使用了什么技术实现了什么功能解决了问题或提升了什么性能指标来写会好些,如使用布隆过滤器实现了判断短链接是否存在,大大提升了查询速度
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务