题解:AcWing 839 模拟堆

📅 2026/7/5 20:34:47
题解:AcWing 839 模拟堆
【题目来源】AcWing:839 模拟堆 - AcWing题库【题目描述】维护一个集合,初始时集合为空,支持如下几种操作:(1)I x,插入一个数x;(2)PM,输出当前集合中的最小值;(3)DM,删除当前集合中的最小值(数据保证此时的最小值唯一);(4)D k,删除第k个插入的数;(5)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【核心思想】问题分析:需要维护一个支持动态插入、删除最小值、按插入顺序删除指定元素、按插入顺序修改指定元素的集合。普通堆只支持前三种操