Задача 15: Сжатие диапазонов

Напишите определение функции def summary_ranges(nums):, которая принимает 

целочисленный массив nums с отсортированными уникальными значениями.

Диапазон [a,b] - это набор всех целых чисел от a до b (включительно).

Верните наименьший отсортированный массив диапазонов, который охватывает все числа в массиве. То есть, каждый элемент nums охватывается ровно одним из диапазонов, и не существует такого целого числа x, которое находится в одном из диапазонов, но не в nums.

Каждый диапазон [a,b] в итоговом массиве должен быть вида:

  • "a->b", если a != b

  • "a", если a == b

 

Пример 1:

Ввод: nums = [0,1,2,4,5,7]

Вывод: ["0->2","4->5","7"]

Пояснение: Диапазоны: [0,2] --> "0->2" [4,5] --> "4->5" [7,7] --> "7"

Пример 2:

Ввод: nums = [0,2,3,4,6,8,9]

Вывод: ["0","2->4","6","8->9"]

Пояснение: Диапазоны: [0,0] --> "0" [2,4] --> "2->4" [6,6] --> "6" [8,9] --> "8->9"

0

Вы должны Войти или Зарегистрироваться чтобы оставлять комментарии