Menu
CoddyTech

Summary Ranges

Tu reçois un tableau trié nums d’entiers distincts. Répartis-le en un minimum d’intervalles d’entiers consécutifs, de sorte que chaque valeur appartienne à exactement un intervalle. Écris un intervalle a..b sous la forme du texte "a->b", ou sous la forme "a" lorsqu’il contient une seule valeur. Renvoie les intervalles dans l’ordre croissant.

Fonction

summaryRanges(nums: integer-array) → string-array
numsinteger-array
le tableau trié d’entiers distincts
Renvoiestring-array
les plages sous forme de texte, des valeurs les plus petites aux plus grandes

Contraintes

  • 1 ≤ nums.length ≤ 5000
  • -109 ≤ nums[i] ≤ 109
  • nums est trié par ordre croissant et ne contient aucun doublon.

Exemples

Entrée
nums = [0, 1, 2, 5, 6, 9]
Sortie
["0->2", "5->6", "9"]
Explication
0, 1, 2 se suivent, ils forment donc "0->2". Le saut de 2 à 5 commence une nouvelle plage, "5->6", et 9 reste seul sous la forme "9".

lock icon+16 tests cachés à la soumission

challenge icon

Pour aller plus loin

Supposons que nums puisse contenir des doublons, comme [1, 2, 2, 3]. Que modifierais-tu pour qu’il affiche toujours "1->3" ?

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

Cas 1

Cas 2

Entrée

nums = [0, 1, 2, 5, 6, 9]

Attendu

["0->2", "5->6", "9"]