Ctrl K

Отменить как можно меньше встреч

Средняя
В переговорной на день назначены встречи meetings, где meetings[i] = [start, end] — время начала и конца i-й встречи. Комната одна, поэтому встречи, которые идут одновременно, провести не получится. Верните наименьшее число встреч, которые нужно отменить, чтобы никакие две оставшиеся не пересекались. Если одна встреча заканчивается ровно тогда, когда начинается другая (например, [1, 3] и [3, 5]), это не пересечение.
Пример 1
meetings=[[9, 12], [10, 11], [11, 13], [13, 14]] → 1

Встреча [9, 12] пересекается и с [10, 11], и с [11, 13]. Отменяем её — остальные идут одна за другой: [10, 11], [11, 13], [13, 14].

Пример 2
meetings=[[0, 5], [0, 5], [0, 5]] → 2

Три одинаковые встречи — оставить можно только одну, две отменяем.

Пример 3
meetings=[[-3, -1], [-1, 4]] → 0

Встречи лишь касаются в момент -1, это не пересечение — отменять ничего не нужно.

Ограничения
  • 1 ≤ len(meetings) ≤ 10⁵
  • meetings[i].length == 2
  • -5·10⁴ ≤ start < end ≤ 5·10⁴
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСамая длинная цепочка отрезков СредняяДобыча, которая делится на троих СредняяСамая сильная команда СредняяРазломать шоколадку СредняяНаибольшее число, кратное трём Сложная
загружаем Python…
Вход
meetings=[[9, 12], [10, 11], [11, 13], [13, 14]]
Ожидается
1

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