【洛谷】P3378 【模板】堆

简介: 洛谷 P3378 【模板】堆

1. 题目描述

image.png

2. 思路分析

一道模板题,主要是熟悉STL中优先队列(priority_queue)的使用。

堆的STL实现:

priority_queue q; //这是一个大根堆q(默认为大根堆)

priority_queue,greater >q; //这是一个小根堆q

优先队列的操作:

q.top(); //取得堆顶元素,并不会弹出
q.pop(); //弹出堆顶元素
q.push(); //往堆里面插入一个元素
q.empty(); //查询堆是否为空,为空则返回1,否则返回0
q.size(); //查询堆内元素数量

3. 代码实现

#include<bits/stdc++.h>
using namespace std;
using ll = long long;

void solve() {
   
   
    int n; cin >> n;
    priority_queue <ll, vector<ll>, greater<ll>>pq;
    while (n--) {
   
   
        int op; cin >> op;
        if (op == 1) {
   
   
            int x; cin >> x;
            pq.push(x);
        }
        else if (op == 2) {
   
   
            cout << pq.top() << '\n';
        }
        else {
   
   
            pq.pop();
        }
    }
}

int main() {
   
   
    ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
    solve();
    return 0;
}

image.png

相关文章
|
SQL 关系型数据库 分布式数据库
PolarDB常见问题之修改root密码失败如何解决
PolarDB是阿里云推出的下一代关系型数据库,具有高性能、高可用性和弹性伸缩能力,适用于大规模数据处理场景。本汇总囊括了PolarDB使用中用户可能遭遇的一系列常见问题及解答,旨在为数据库管理员和开发者提供全面的问题指导,确保数据库平稳运行和优化使用体验。
|
11月前
|
数据采集 存储 数据管理
CDGA|如何实施非常精准的数据治理策略?
精准的数据治理需要企业从设定明确目标、制定适应性策略、构建完善组织结构、制定严谨制度流程、采用先进技术工具、加强事前预防、推动数据驱动决策以及建立健全监督与评估机制等多个方面入手。只有这样,企业才能有效应对数据时代带来的挑战,充分释放数据价值,为组织的可持续发展提供有力支撑。
|
存储
【洛谷 P2437】蜜蜂路线 题解(递归+记忆化搜索+高精度)
蜜蜂路线问题:蜜蜂从蜂房$m$到$n$($m&lt;n$)按数字递增爬行。给定$m$和$n$,求路线数。示例:$m=1$,$n=14$,输出$377$。100%数据$1\leq m,n\leq1000$。使用斐波那契序列优化,高精度处理大数。代码实现斐波那契存储并动态规划求解。
239 0
|
XML 数据可视化 Java
文本对比工具,绕不开这个6款!
文本对比工具,绕不开这个6款!
1277 0
|
11月前
|
调度 开发者 Python
python超详细的日期操作【建议收藏备用】
python超详细的日期操作【建议收藏备用】
142 0
|
数据可视化 关系型数据库 MySQL
【MySQL】MySQL8.0 创建用户及授权 - 看这篇就足够了
本文介绍了在MySQL 8.0+版本中创建和管理用户的详细步骤,包括通过命令行进入MySQL、创建数据库、用户及授权等操作,并提供了具体命令示例。适合初学者参考学习,帮助实现系统的权限管理和安全控制。
5863 3
【MySQL】MySQL8.0 创建用户及授权 - 看这篇就足够了
|
SQL 关系型数据库 MySQL
使用OceanBase进行大规模数据迁移的最佳实践
【8月更文第31天】随着业务的不断扩展,数据迁移成为了企业日常运营中不可避免的任务之一。对于那些正在从传统的数据库系统向分布式数据库系统过渡的企业来说,数据迁移尤为重要。OceanBase 是一个由阿里巴巴集团开发的高性能分布式关系数据库,它以其高可用性、水平扩展能力和成本效益而闻名。本文将探讨如何使用 OceanBase 进行大规模数据迁移,并提供相关的最佳实践和代码示例。
967 1
|
负载均衡 Kubernetes 算法
K8s服务发现与负载均衡的技术探索
【7月更文挑战第15天】K8s通过Service资源对象和kube-proxy组件实现了高效、灵活的服务发现和负载均衡机制。通过合理选择Service类型、优化kube-proxy配置以及使用Ingress进行高级路由,可以确保应用在K8s集群中高效、可靠地运行。随着云原生技术的不断发展,K8s的服务发现和负载均衡机制也将不断完善和优化,为更多场景提供强大的支持。
|
存储 Linux 芯片
OpenSBI三种固件的区别
OpenSBI三种固件的区别