Ctrl K

Очередь в кофейном киоске

Средняя
В кофейном киоске работает один бариста. Заказ orders[i] = [arrival, time] означает, что покупатель пришёл в момент arrival, а его напиток готовится time минут. Покупатели перечислены в порядке прихода. Бариста делает напитки строго по очереди и только по одному. Если он свободен, когда приходит покупатель, то сразу берётся за его заказ, иначе — сразу после предыдущего. Время ожидания покупателя — от его прихода до момента, когда напиток готов. Верните среднее время ожидания по всем покупателям. Ответ принимается с точностью до 10⁻⁵.
Пример 1
orders=[[2, 3], [3, 1], [10, 2]] → 2.6666666666666665

Первый заказ готов в 5 (ждали 3), второй начат в 5 и готов в 6 (ждали 3), третий начат в 10 и готов в 12 (ждали 2). Среднее: (3 + 3 + 2) / 3 ≈ 2.6667.

Пример 2
orders=[[1, 4], [1, 4]] → 6.0

Оба пришли в 1: первый получил кофе в 5, второй — в 9. Среднее: (4 + 8) / 2 = 6.

Ограничения
  • 1 ≤ len(orders) ≤ 10⁵
  • 1 ≤ arrival, time ≤ 10⁴
  • Моменты прихода не убывают
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиЧтение по спирали СредняяКвадрат, пронумерованный по спирали СредняяСледующий шаг колонии клеток СредняяЗигзаг по диагоналям СредняяТри в ряд до упора Средняя
загружаем Python…
Вход
orders=[[2, 3], [3, 1], [10, 2]]
Ожидается
2.6666666666666665

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