148. Хипуй

Не решаласьСредняя

В этой задаче вам необходимо самостоятельно (не используя соответствующие классы и функции стандартной библиотеки) организовать структуру данных Heap для хранения целых чисел, над которой определены следующие операции:

a) Insert(k) – добавить в Heap число k ;

b) Extract достать из Heap наибольшее число (удалив его при этом).

Формат ввода

В первой строке содержится количество команд N (1 $\le$ N $\le$ 100000), далее следуют N команд, каждая в своей строке. Команда может иметь формат: “0 $\lt$ число $\gt$ ” или “1”, обозначающий, соответственно, операции Insert( $\lt$ число $\gt$ ) и Extract. Гарантируется, что при выполнении команды Extract в структуре находится по крайней мере один элемент.

Формат вывода

Для каждой команды извлечения необходимо отдельной строкой вывести число, полученное при выполнении команды Extract.

Ограничения

Ограничение времени

2 с

Ограничение памяти

64 МБ

Пример 1

Ввод
2
0 10000
1
Вывод
10000

Пример 2

Ввод
14
0 1
0 345
1
0 4346
1
0 2435
1
0 235
0 5
0 365
1
1
1
1
Вывод
345
4346
2435
365
235
5
1

Теги

Нужно войти, чтобы отправить решение.Войти