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

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

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

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

numbers_to_ranges([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.