Смена курьера Ozon — пара [start, end] в минутах от начала суток: курьер на линии в минуту t, если start ≤ t < end.
Для каждой минуты из moments верните, сколько курьеров на линии. Ответы — в том же порядке, что и moments.
В работе: Диспетчер склада сверяет 3000 смен с 50 000 заказов дня: в каждую минуту заказа нужно знать, сколько курьеров было свободно в принципе.
Пример 1
Ввод
shifts = [[480, 1200], [600, 900], [900, 1320]] moments = [500, 600, 900, 1250]
Вывод
[1, 2, 2, 1]
В минуту 900 вторая смена уже закончилась, третья началась: на линии двое.
Пример 2
Ввод
shifts = [[0, 10]] moments = [10]
Вывод
[0]
Конец смены не входит.
Ограничения
- 0 ≤ n ≤ 10⁵ смен
- 1 ≤ q ≤ 10⁵ запросов
- 0 ≤
start<end≤ 10⁹ - Лимит — 2 с на тест (2000 мс).
Как вызывается ваш код
Читать ввод и печатать ответ не нужно: мы вызываем функцию на каждом тесте и сравниваем то, что она вернула.
print() и console.log() уходят в консоль.
def couriers_online(shifts, moments):
Источник: наша задача на данных Ozon. Условие пересказано своими словами.
Давали на собеседовании?
Стр. 1Ctrl+Enter — запуск · Ctrl+Shift+Enter — отправка
Ожидаемый ответ не нужен: покажем, что вернула функция.
Здесь появится результат отправки.