Алгоритм
Алгоритм решения этой задачи основан на правилах. Фактически он перебирает список целых чисел
и определяет диапазоны последовательных целых чисел.
1. Принимается список положительных целых чисел.
2. Инициализируются переменные start и end значением None.
3. Для каждого целочисленного элемента item во входном списке items выполняются следующие действия:
а) если start имеет значение None, то обеим переменным, start и end, присваивается значение item;
б) если item равен end + 1, то переменной end присваивается значение item;
в) иначе текущий получившийся диапазон добавляется в список ranges, причем если значение start равно значению end,
то добавляется str (start), иначе добавляется str (start) + '.' + str (end);
г) затем начинается свертывание нового диапазона, для чего обеим переменным, start и end, присваивается значение item.
4. Если переменная start имеет значение, отличное от None, то заключительный диапазон добавляется в ranges
с использованием той же логики, что и на предыдущем шаге.
5. Диапазоны объединяются через запятую, и полученная строка возвращается.