Контест Middle Коллекции изнутри обновлено
Очередь задач с приоритетом
Условие
Диспетчер принимает задачи и выдаёт их на выполнение. Операции:
add name pдобавить задачу с именемnameи приоритетомp;nextвыдать задачу с наибольшим приоритетом, а среди равных ту, что добавлена раньше; вывести её имя илиempty, если задач нет.
Ввод: в первой строке q (1 ≤ q ≤ 2·10⁴), далее операции. Имена из латинских букв и цифр, приоритеты от 0 до 10⁹.
Вывод: результат каждой операции next.
Пример
6
add build 2
add deploy 5
add test 5
next
next
next
deploy
test
build
Как подойти
Подсказки: 2
- Куча не гарантирует порядок равных элементов.
- Добавьте к задаче порядковый номер.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.