Минимум на стеке
Минимум на стеке
Вам требуется реализовать структуру данных, выполняющую следующие операции:
Добавить элемент x в конец структуры.
Удалить последний элемент из структуры.
Выдать минимальный элемент в структуре.
Входные данные
В первой строке задано количество операций n\:(1 \le n \le 10^6). Каждая из следующих n строк содержит одну операцию. В i-ой строке находится число t_i — тип операции:
1 если операция добавления;
2 если операция удаления;
3 если операция нахождения минимума;
В случае операции добавления после типа записано целое число x\:(-10^9 \le x \le 10^9) — элемент, который следует добавить в структуру. Гарантируется, что перед каждой операцией удаления или нахождения минимума структура не пуста.
Выходные данные
Для каждой операции нахождения минимума выведите в отдельной строке одно число — минимальный элемент в структуре.
Пример
8 1 2 1 3 1 -3 3 2 3 2 3
-3 2 2