hzCPPOJ

堆操作

时间限制:  1 s      内存限制:   128 MB
提交:15     正确:12     分值:98

题目描述


给定一个数列,初始为空,请支持下面三种操作:

1, 给定一个整数 x,请将 x 加入到数列中。

2, 输出数列中最小的数。

3, 删除数列中最小的数(如果有多个数最小,只删除 1 个)。


输入

第一行是一个整数,表示操作的次数 n。 接下来 n 行,每行表示一次操作。每行首先有一个整数 op 表示操作类型。

1,若 op=1,则后面有一个整数 x,表示要将 x 加入数列。

2,若 op=2,则表示要求输出数列中的最小数。

3,若 op=3,则表示删除数列中的最小数。如果有多个数最小,只删除 1 个。

输出

对于每个操作 2,输出一行一个整数表示答案。

样例

样例输入:
5 1 2 1 5 2 3 2
样例输出:
2 5

提交人

bpxiao

来源/分类