На складе Wildberries k ворот приёмки. Поставка [start, end] занимает одни ворота с минуты start до минуты end (в минуту end ворота уже свободны). Переносить поставки нельзя: принимаем целиком или отказываем.
Верните наибольшее число поставок, которые можно принять так, чтобы в любой момент было занято не больше k ворот.
В работе: Слоты на разгрузку раздают за сутки вперёд: 900 заявок поставщиков на 14 ворот, и каждая лишняя принятая машина — меньше очереди у склада.
Пример 1
supplies = [[0, 10], [1, 3], [3, 5], [5, 7]] k = 1
3
Одни ворота: выгоднее отказать длинной [0, 10] и принять три короткие.
Пример 2
supplies = [[0, 4], [1, 5], [2, 6]] k = 2
2
Три поставки пересекаются в минуте 2, принять можно две.
Ограничения
- 0 ≤ длина
supplies≤ 10⁵ - 0 ≤
start<end≤ 10⁹ - 1 ≤
k≤ 10⁵ - Лимит — 3 с на тест (3000 мс).
print() и console.log() уходят в консоль.
def max_accepted(supplies, k):
Источник: наша задача на данных Wildberries. Условие пересказано своими словами.
Ожидаемый ответ не нужен: покажем, что вернула функция.
Здесь появится результат отправки.