题解 | 【模板】整数优先队列

【模板】整数优先队列

https://www.nowcoder.com/practice/a88e9711f7b04369982bbe8902278ae4?tpId=383&tqId=11211911&channelPut=tracker1

看大部分题解都是使用最小堆优先队列,不过我是直接以题入手,题问什么我答什么,既然提到多重集合,那么不妨就使用这个数据结构来解题:

#include <iostream>
#include <set>
using namespace std;

int main() {
    multiset<long long>a;
    int n;
    cin >> n;
    while (n--) {
        int op;
        cin >> op;
        switch (op) {
            case 1:{
                long long x;
                cin >> x;
                a.insert(x);
                break;
            }
            case 2:{
                cout << *(a.begin()) << '\n';
                break;
            }
            case 3:{
                auto it = a.begin();
                a.erase(it);
                break;
            }
        }
    }
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

01-11 08:47
门头沟学院 Java
choumoduji...:读研的目的就是为了以最快的速度和最低的要求完成“学校”规定的毕业标准,而不是所谓课题组的要求
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务