Menu
CoddyTech

Jump Game

Tu te trouves à l’indice 0 du tableau nums. Depuis l’indice i, tu peux avancer d’un nombre quelconque de pas compris entre 1 et nums[i] ; nums[i] correspond donc à la longueur maximale de ton saut depuis cet indice, et un 0 signifie que tu ne peux pas avancer. Renvoie true si une séquence de sauts permet d’atteindre le dernier indice, et false sinon.

Fonction

canJump(nums: integer-array) → boolean
numsinteger-array
le plus grand saut que tu peux effectuer depuis chaque indice
Renvoieboolean
vrai si tu peux arriver au dernier indice en partant de l’indice 0, sinon faux

Contraintes

  • 1 ≤ nums.length ≤ 104
  • 0 ≤ nums[i] ≤ 105
  • Un saut peut être plus court que nums[i], donc un long saut ne vous oblige jamais à dépasser le dernier indice.

Exemples

Entrée
nums = [2, 0, 3, 1, 0, 2]
Sortie
true
Explication
Depuis l’index 0, tu peux atteindre l’index 1 ou 2. L’index 1 contient 0 et est une impasse, mais l’index 2 contient 3 et mène à l’index 5, le dernier index.

lock icon+18 tests cachés à la soumission

challenge icon

Pour aller plus loin

Comptez les différentes séquences de sauts qui atterrissent sur le dernier indice, modulo 10^9+7, toujours en O(n) temps.

Réinitialiser le code
def canJump(nums):
    # Écrivez le code ici
Cas de test

Cas 1

Cas 2

Cas 3

Entrée

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

Attendu

true