Войти Регистрация
Алгоритмы

203. Дни с самой низкой ценой за историю

Лёгкая

prices[i] — цена товара на Ozon в i-й день наблюдения, в рублях.

Верните номера дней (по возрастанию), когда цена была строго ниже, чем во все предыдущие дни. Первый день всегда считается рекордом. Для пустой истории верните пустой список.

В работе: Подписка «сообщить о снижении цены»: уведомление уходит только на новый исторический минимум, иначе покупатель за 90 дней получил бы десятки писем о скидках, которые уже видел.

Пример 1

Ввод
prices = [2990, 3190, 2790, 2790, 2490, 2690]
Вывод
[0, 2, 4]

Повтор 2790 не новый минимум.

Пример 2

Ввод
prices = [100, 200, 300]
Вывод
[0]

Цена только росла.

Ограничения

  • 0 ≤ n ≤ 10⁵
  • 1 ≤ prices[i] ≤ 10⁷
  • Лимит — 2 с на тест (1500 мс).
Как вызывается ваш код Читать ввод и печатать ответ не нужно: мы вызываем функцию на каждом тесте и сравниваем то, что она вернула. print() и console.log() уходят в консоль.
def record_low_days(prices):
МассивОдин проходМинимум на префиксецельO(n)

Источник: наша задача на данных Ozon. Условие пересказано своими словами.