Ctrl K

Свободные дни в календаре

Средняя
Сотрудник работает total_days дней подряд, дни нумеруются с 1. В календаре есть встречи: bookings[i] = [start, end] означает, что встреча занимает все дни с start по end включительно. Встречи могут пересекаться и даже совпадать. Верните количество рабочих дней, на которые не назначено ни одной встречи.
Пример 1
total_days=12, bookings=[[3, 5], [4, 8], [11, 11]] → 5

Занятые дни: 3–8 и 11. Свободны 1, 2, 9, 10 и 12 — пять дней.

Пример 2
total_days=4, bookings=[[1, 2], [3, 4]] → 0

Встречи покрывают все четыре дня.

Пример 3
total_days=7, bookings=[[2, 2], [2, 2]] → 6
Ограничения
  • 1 ≤ total_days ≤ 10⁹
  • 1 ≤ len(bookings) ≤ 10⁵
  • bookings[i] состоит из двух чисел
  • 1 ≤ bookings[i][0] ≤ bookings[i][1] ≤ total_days
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиТройки с нулевой суммой СредняяСумма тройки ближе всего к цели СредняяЧетыре числа с заданной суммой СредняяРазличные перестановки с повторами СредняяРазложить анаграммы по группам Средняя
загружаем Python…
Вход
total_days=12, bookings=[[3, 5], [4, 8], [11, 11]]
Ожидается
5

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 92 теста на сервере, включая скрытые.