Контест Middle Контейнеры STL изнутри обновлено
Планировщик задач на priority_queue
Условие
Планировщик получает задачи с приоритетами и по команде run запускает задачу с наибольшим приоритетом, а среди равных ту, что была добавлена раньше. Команды:
add name p: добавить задачуnameс приоритетомp;run: вывести имя запускаемой задачи и убрать её, илиidle, если задач нет.
Ввод: q (1 ≤ q ≤ 3000), затем q команд. 1 ≤ p ≤ 10⁹, имена уникальные, до 10 символов.
Вывод: ответ на каждую run.
Пример 1
Ввод:
6
add a 1
add b 5
add c 5
run
run
run
Вывод:
b
c
a
Пример 2
Ввод:
2
run
add x 1
Вывод:
idle
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.