eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Минимум на стеке

Минимум на стеке

Вам требуется реализовать структуру данных, выполняющую следующие операции: \begin{enumerate} \item Добавить элемент $x$ в конец структуры. \item Удалить последний элемент из структуры. \item Выдать минимальный элемент в структуре. \end{enumerate} \includegraphics{https://static.e-olymp.com/content/e8/e8b80c354dd1cbff444c6392d88e484fb42ec425.gif} \InputFile В первой строке задано количество операций $n\:(1 \le n \le 10^6)$. Каждая из следующих $n$ строк содержит одну операцию. В $i$-ой строке находится число $t_i$ --- тип операции: \begin{itemize} \item 1 если операция добавления; \item 2 если операция удаления; \item 3 если операция нахождения минимума; \end{itemize} В случае операции добавления после типа записано целое число $x\:(-10^9 \le x \le 10^9)$ --- элемент, который следует добавить в структуру. Гарантируется, что перед каждой операцией удаления или нахождения минимума структура не пуста. \OutputFile Для каждой операции нахождения минимума выведите в отдельной строке одно число --- минимальный элемент в структуре.
Лимит времени 3 секунды
Лимит использования памяти 128 MiB
Входные данные #1
8
1 2
1 3
1 -3
3
2
3
2
3
Выходные данные #1
-3
2
2