#P1160. 堆操作

堆操作

题目描述

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

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

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

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

输入格式

第一行是一个整数,表示操作的次数n。

接下来nn行,每行表示一次操作。每行首先有一个整数opop 表示操作类型。

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

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

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

输出格式

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

样例 #1

样例输入 #1

5

1 2

1 5

2

3

2

样例输出 #1

2

5