Рынок: хроника цен на зерно

Стек и очередь Сложная
Летописец ведёт цены на зерно по дням: prices. Для каждого дня он хочет знать 'серию' - сколько дней подряд, заканчивая этим днём, цена была не выше сегодняшней. Верните список серий для всех дней. Наивно это O(n^2); красивое решение за O(n) - монотонный стек.
Сигнатура функции
price_spans(prices: list[int]) -> list[int]
Примеры
ВходОжидаемый результат
[[100, 80, 60, 70, 60, 75, 85]][1, 1, 1, 2, 1, 4, 6]
[[1, 2, 3]][1, 2, 3]
1решили
1пытались
100%успешность
Войдите, чтобы решить →