Menu
CoddyTech

Summary Ranges

Obtienes un arreglo ordenado nums de enteros distintos. Divídelo en la menor cantidad posible de rangos de enteros consecutivos, de modo que cada valor pertenezca exactamente a un rango. Escribe un rango a..b como el texto "a->b", o como "a" cuando contiene un solo valor. Devuelve los rangos en orden creciente.

Función

summaryRanges(nums: integer-array) → string-array
numsinteger-array
el arreglo ordenado de enteros distintos
Devuelvestring-array
los rangos como texto, de los valores más pequeños a los más grandes

Restricciones

  • 1 ≤ nums.length ≤ 5000
  • -109 ≤ nums[i] ≤ 109
  • nums está ordenado en orden creciente y no tiene duplicados.

Ejemplos

Entrada
nums = [0, 1, 2, 5, 6, 9]
Salida
["0->2", "5->6", "9"]
Explicación
0, 1, 2 van seguidos, así que forman "0->2". El salto de 2 a 5 inicia un nuevo intervalo, "5->6", y 9 queda solo como "9".

lock icon+16 pruebas ocultas al enviar

challenge icon

Para ir más allá

Supón que nums podría contener duplicados, como [1, 2, 2, 3]. ¿Qué cambiarías para que siga imprimiendo "1->3"?

Restablecer código
def summaryRanges(nums):
    # Escribe el código aquí
Casos de prueba

Caso 1

Caso 2

Entrada

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

Esperado

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