#105. 排序查询

排序查询

题目描述

有一个空序列 AA 。你将收到 QQ 次查询,这些查询应按照给出的顺序进行处理。每个查询都是以下三种类型之一:

  • 1 x :将 xx 添加到 AA 的末尾。
  • 2 :输出 AA 开头的元素。然后,删除该元素。当给出这个查询时,保证 AA 不会为空。
  • 3 :按升序对 AA 进行排序。

输入格式

第一行一个整数 QQ

接下来 QQQQ次查询。

每种查询按题目描述中的格式输入

输出格式

当操作类型为2时输出查询结果。

样例

8
1 4
1 3
1 2
1 1
3
2
1 0
2
1
2

解释#1

在样例 11 中,处理第 ii 个查询后 AA 的状态显示在 ii 行上,如下所示。 (4) (4) (4,3) (4, 3) (4,3,2) (4, 3, 2) (4,3,2,1) (4, 3, 2, 1) (1,2,3,4) (1, 2, 3, 4) (2,3,4) (2, 3, 4) (2,3,4,0) (2, 3, 4, 0) (3,4,0) (3, 4, 0)

9
1 5
1 5
1 3
2
3
2
1 6
3
2
5
3
5

解释#2

在样例 22 中,处理第 ii 个查询后 AA 的状态显示在 ii 行上,如下所示。 (5) (5) (5,5) (5, 5) (5,5,3) (5, 5, 3) (5,3) (5, 3) (3,5) (3, 5) (5) (5) (5,6) (5, 6) (5,6) (5, 6) (6) (6)

数据范围

  • 1  Q  2 × 105 1\ \leq\ Q\ \leq\ 2\ \times\ 10^5
  • 0  x  109 0\ \leq\ x\ \leq\ 10^9
  • 当给出查询2时,AA 不为空。
  • 所有输入均为整数。