Следующий больший элемент

MediumAlgo
05:00
Лучше работает на десктопе
StackMonotonic Stack

Дан массив целых чисел nums. Для каждого элемента найдите следующий больший элемент — первый элемент справа, который строго больше текущего. Если такого нет, верните -1.

Сигнатура

def next_greater(nums: list[int]) -> list[int]:

Примеры

next_greater([2, 1, 2, 4, 3]) → [4, 2, 4, -1, -1]
next_greater([1, 3, 2, 4]) → [3, 4, 4, -1]

Constraints

- 1 ≤ len(nums) ≤ 10⁵
- -10⁹ ≤ nums[i] ≤ 10⁹

Примеры

Пример 1

Вход:
nums = [2,1,2,4,3]
Выход:[4,2,4,-1,-1]

Пример 2

Вход:
nums = [1,3,2,4]
Выход:[3,4,4,-1]

Пример 3

Вход:
nums = [5,4,3,2,1]
Выход:[-1,-1,-1,-1,-1]
Консоль
Нажмите Run или Ctrl+Enter для запуска