Вступить в клуб →
сложнаяpythonPython: типы, ООП и структуры данных

Схлопывание пересекающихся интервалов дежурств

В графике дежурств интервалы задаются минутами от начала суток и могут пересекаться. Напишите функцию merge_intervals(shifts).

На вход — список пар [начало, конец] в произвольном порядке. Верните список непересекающихся пар, отсортированный по началу.

Пересекающиеся и соприкасающиеся интервалы объединяются: [540, 720] и [720, 780] дают [540, 780]. Интервал целиком внутри другого исчезает в нём. Для пустого списка верните пустой список, исходные данные не меняйте.

заготовка решения

def merge_intervals(shifts):
    # ваш код
    return None

🔒 Проверка ответа — для участников клуба

  • Автотесты прямо в браузере
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела