Menu
CoddyTech

Jump Game

Você está no índice 0 do array nums. A partir do índice i, você pode saltar para frente qualquer número de posições de 1 até nums[i], então nums[i] é o salto mais longo que você pode dar a partir daí, e 0 significa que você não pode se mover. Retorne true se alguma sequência de saltos chegar ao último índice e false caso contrário.

Função

canJump(nums: integer-array) → boolean
numsinteger-array
o salto mais longo que você pode dar a partir de cada índice
Retornaboolean
true se você puder chegar ao último índice começando pelo índice 0; caso contrário, false

Restrições

  • 1 ≤ nums.length ≤ 104
  • 0 ≤ nums[i] ≤ 105
  • Um salto pode ser mais curto que nums[i], então um salto longo nunca força você a passar do último índice.

Exemplos

Entrada
nums = [2, 0, 3, 1, 0, 2]
Saída
true
Explicação
Do índice 0, você pode chegar ao índice 1 ou 2. O índice 1 contém 0 e é um beco sem saída, mas o índice 2 contém 3 e chega ao índice 5, o último índice.

lock icon+18 testes ocultos ao enviar

challenge icon

Para ir além

Conte o número de diferentes sequências de saltos que chegam ao último índice, módulo 10^9+7, ainda em tempo O(n).

Redefinir código
def canJump(nums):
    # Escreva o código aqui
Casos de teste

Caso 1

Caso 2

Caso 3

Entrada

nums = [2, 0, 3, 1, 0, 2]

Esperado

true