题解 | #跳跃游戏(一)#
跳跃游戏(一)
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)