Ctrl K

Затишье до и после

Средняя
Музей хочет выбрать день для реставрации зала. Известен прогноз посещаемости: visitors[i] — сколько гостей ожидается в день i (дни нумеруются с нуля). Также дано число span. День i подходит, если: - до него и после него есть хотя бы по span дней; - в течение span дней перед днём i посещаемость не растёт: visitors[i - span] ≥ … ≥ visitors[i]; - в течение span дней после него не падает: visitors[i] ≤ … ≤ visitors[i + span]. Верните все подходящие дни по возрастанию.
Пример 1
visitors=[9, 7, 7, 4, 6, 8, 3], span=2 → [3]

День 3: перед ним 7 ≥ 7 ≥ 4, после — 4 ≤ 6 ≤ 8. Других подходящих дней нет.

Пример 2
visitors=[5, 5, 5], span=1 → [1]

Посещаемость не меняется, поэтому подходит единственный день, у которого есть сосед с каждой стороны.

Пример 3
visitors=[3, 1, 2], span=0 → [0, 1, 2]

При span = 0 подходит любой день.

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

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