Intervalo livre

Crie uma função que converta um array de números ordenado em um array de intervalos (representados como strings). Observe que alguns arrays têm alguns números faltando.

Exemplos

numbersToRanges([1, 2, 3, 4, 5]) ➞ ["1-5"]

numbersToRanges([3, 4, 5, 10, 11, 12]) ➞ ["3-5", "10-12"]

numbersToRanges([1, 2, 3, 4, 99, 100]) ➞ ["1-4", "99-100"]

numbersToRanges([1, 3, 4, 5, 6, 7, 8]) ➞ ["1", "3-8"]

Observações

  • Se não houver números consecutivos a um número do array, represente-o apenas como a versão em string desse número (veja o exemplo #4).
  • Retorne um array vazio se o array fornecido estiver vazio.