最新公告
  • 欢迎您光临信息学奥赛网,一个优质的信息学编程题库和信息学编程学习资源专业网站。欢迎加入VIP
  • 问题 O: L18-2 优先队列2 - 练习5

    正文概述 网友投稿   2026-01-22 16:19:24  

    题目描述

    干扰器上的问题需要烛龙战队建立一个空的序列,对这个序列将有三种操作,每种操作用参数op表示种类。 op=1时,会再给一个参数m,烛龙战队要向序列插入m这个元素。 op=2时,需要删除序列中最早插入的元素,输出被删除的这个元素是第几个被插入到序列的。 op=3时,需要删除序列中数值最大的元素,输出被删除的这个元素是第几个被插入到序列的,如果有若干个元素都满足值最大这个要求,要删除的元素就是最早被插入的元素。 一共有n次操作,烛龙战队需要设计一个程序完成上面的需求。

    输入

    输入包括若干行。 第一行包含一个整数n,代表共有n次操作。(1 <= n <= 5*10^5) 接下来你要构造程序,实现下面三种操作,每个操作首先用参数op表示种类,具体的: op=1时,再给定一个参数m,你要向序列插入m这个元素。 op=2时,删除序列中最早插入的元素,输出被删除的这个元素是第几个被插入到序列的。 op=3时,删除序列中数值最大的元素,输出被删除的这个元素是第几个被插入到序列的,特别的,如果有若干个元素都满足值最大这个要求,要删除的元素是最早被插入的元素。(1 ≤ m ≤ 5 × 10^5, 1 ≤ op ≤ 3)

    输出

    对于每个类型为2或3的查询,输出一个整数。

    样例输入

    8
    1 8
    1 10
    1 6
    3
    2
    1 9
    2
    3

    样例输出

    2 1 3 4
    信息学奥赛网,一个优质的源码资源平台!
    信息学奥赛网 » 问题 O: L18-2 优先队列2 - 练习5