问题 O: 模拟堆

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:15 解决:0

题目描述

维护一个集合,初始时集合为空,支持如下几种操作:

I x,插入一个数 x;
PM,输出当前集合中的最小值;
DM,删除当前集合中的最小值(数据保证此时的最小值唯一);
D k,删除第 k 个插入的数;
C k x,修改第 k 个插入的数,将其变为 x;

现在要进行 N 次操作,对于所有第 2 个操作,输出当前集合的最小值。

输入

第一行包含整数 N。

接下来 N 行,每行包含一个操作指令,操作指令为 I x,PM,DM,D k 或 C k x 中的一种。

输出

对于每个输出指令 PM,输出一个结果,表示当前集合中的最小值。

每个结果占一行。

样例输入 复制

8
I -10
PM
I -10
D 1
C 2 8
I 6
PM
DM

样例输出 复制

-10
6

提示

$1≤N≤10^5$
$−10^9≤x≤10^9$
数据保证合法。