优先队列操作实现 题目描述 实现一个任务优先队列,支持以下 $4$ 种操作: ADD N P:向队列中加入编号为 $N$、优先级为 $P$ 的任务; NEXT:取出并输出当前优先级最高的任务编号;如果优先级相同,取出编号较小的任务;如果队列为空,输出 -1; REMOVE N:移除编号为 $N$ 的任务;如果该任务不存在,则不进行任何操作; COUNT:输出当前队列中的任务数量。 输入格式 第一行输入一个整数 $m$,表示操作数。 接下来 $m$ 行,每行表示一个操作,格式为: ADD N P NEXT REMOVE N COUNT 输出格式 对于每个 NEXT 和 COUNT 操作,输出相应结果,每个结果占一行。 输入样例 10 ADD 1 1 ADD 2 3 ADD 3 2 ADD 4 3 NEXT REMOVE 3 COUNT NEXT NEXT NEXT 输出样例 2 2 4 1 -1 样例说明 前四个操作后,队列中任务为 (1,1),(2,3),(3,2),(4,3)。第一次 NEXT 取出优先级最高且编号较小的任务 2。移除任务 3 后队列中剩余 2 个任务。之后三次 NEXT 依次取出 4、1,最后队列为空,输出 -1。