P1168 中位数

洛谷 | P1168 中位数 | 对顶堆:小根堆+大根堆 利用对顶堆(最大堆与最小堆),保持两堆大小平衡,实现动态数据流中高效的中位数计算。 阅读详情

题目描述

给定一个长度为 NN 的非负整数序列 AA,对于前奇数项求中位数。

输入格式

第一行一个正整数 NN。

第二行 NN 个正整数 A_{1\dots N}A1…N​。

输出格式

共 \lfloor \frac{N + 1}2\rfloor⌊2N+1​⌋ 行,第 ii 行为 A_{1\dots 2i - 1}A1…2i−1​ 的中位数。

输入输出样例

输入 #1复制

7
1 3 5 7 9 11 6

输出 #1复制

1
3
5
6

说明/提示

对于 20\%20% 的数据,N \le 100N≤100;

对于 40\%40% 的数据,N \le 3000N≤3000;

对于 100\%100% 的数据,1 \le N ≤ 1000001≤N≤100000,0 \le A_i \le 10^90≤Ai​≤109。

中位数定义:将1组数排好顺序,最中间的数为中位数,如果没有,那中间的两个数的平均数为中位数~

好了,886~

答案:

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

int n;
vector<int>a;

int main()
{
    cin >> n;
    for(int i = 1,x ; i <= n ; i++)
    {
        scanf("%d",&x);
        a.insert(upper_bound(a.begin(),a.end(),x),x);
        if(i % 2 == 1)
        {
        	printf("%d\n",a[(i - 1) / 2]);
        }
    }
    return 0;
}
[【堆(优先队列】P1168 中位数|普及+ P1168 中位数 ## 题目描述 给定一个长度为 $N$ 的非负整数序列 $A$,对于前奇数项求中位数。 ## 输入格式 第一行一个正整数 $N$。 第二行 $N$ 个正整数 $A_{1\dots N}$。 ## 输出格式 共 $\lfloor \frac{N + 1}2\rfloor$ 行,第 $i$ 行为 $A_{1\dots 2i - 1}$ 的中位数。 ## 输入输出样例 #1 ### 输入 #1 ``` 7 1 3 5 7 9 11 6 ``` ### 输出 #1 ``` 阅读详情

相关推荐

嵌入式C开发必备:用Cursor规则搞定代码风格检查(附Pikachu项目实战)

本文以Pikachu开源项目为例,详细介绍了如何利用Cursor的AI代理规则系统,为嵌入式C开发项目配置一套完整的代码风格检查与规范执行方案。通过实战演示,指导开发者创建项目级规则,实现命名、格式、硬件抽象层及驱动开发的自动化规范,从而提升代码一致性、可维护性和团队协作效率。

weixin_29181861的博客 597

The Med(对顶堆动态求解序列中位数)

The Med

Jacob0824的博客 309

【通信协议-RTCM】MSM语句(1) - 多信号GNSS观测数据消息格式

注释:RTCM响应消息1020为GLONASS星历信息,暂不介绍,前公司暂未研发RTCM消息类型版本的DR/RTK模块,DR/RTK模块仅NMEA消息类型使用注释:公司使用的多信号语句类型为MSM4&MSM7,也应该是运用最广泛的语句类型,例如本人之前在公司开发的工具全是基于MSM7语句类型来进行的。

qxj2422640226的博客 2092

洛谷 P1168 中位数(优先队列)

嗯... 题目链接:https://www.luogu.org/problem/P1168 这道题暴力是肯定不行的,所以说要用优先队列来维护... 思路: 定义一个大根堆,一个小根堆,首先将第一个数随便放进一个堆(这里我们把它放入小根堆),然后再看下一个数,如果这个数比小根堆的堆顶大,那么就把它放入小根堆,否则将它放入大根堆。注意大小根堆的元素个数不能超过2(即...

weixin_30871905的博客 260

pi-star图形界面安装指南

pi-star图形界面安装指南,MMDVM热点安装,树莓派3B+热点

blueisman的专栏 1908

如何免费快速的部署一个自用免VIP的自动追剧工具!NAS新玩法!豆瓣与迅雷结合,轻松实现自动下载电影自动追剧功能(支持Windows,群晖nas,飞牛nas,软路由,服务器等Docker快速部署)

追剧党狂喜!豆瓣追剧神器,自动添加云盘,自动下载,微信通知,一键搞定!

XiaoqiangClub的博客 4582

C++题解之对顶堆:中位数

对顶堆,就是由一个大根堆和一个小根堆,两个堆组成的数据结构。

少儿编程乔老师 991

精读204页华为的流程管理(文末附下载链接)

链接:https://pan.baidu.com/s/1eEwdBR5c0PIxkOrNhDZcGg?pwd=wha2 提取码:wha2 复制这段内容后打开百度网盘手机App,操作更方便哦。,以提升企业运营效率和竞争力,同时解决了诸多业务痛点,为华为的全球化发展提供了有力支撑。华为的流程管理对其发展起着关键作用,通过构建完善的流程体系,提升了企业运营效率与竞争力。华为的流程管理在企业发展中至关重要,其围绕。,并通过流程变革不断优化。在流程管理过程中,强调。构建了全面的流程体系。

cdfunlove的博客 282

洛谷 P1168 中位数

洛谷 P1168 中位数 题目描述 给出一个长度为N的非负整数序列Ai,对于所有1 ≤ k ≤ (N + 1) / 2,输出A1, A3, …, A2k-1的中位数。即前1,3,5,…1,3,5,…个数的中位数。 输入输出格式 输入格式: 第1行为一个正整数N,表示了序列长度。 第2行包含N个非负整数Ai(Ai≤ 10^9) 输出格式: 共(N + 1) / 2行,第i行为A1, A3, …, A...

Mintind的博客 960

大华 DSS 数字监控系统 itcBulletin SQL 注入漏洞复现

大华 DSs 数字监控系统是大华开发的一款安防视频监控系统,拥有实时监视、云台操作、录像回放、报警处理、设备管理等功能。大华 DSS存在SQL注入漏洞,攻击者 pota/services/itcBuletin 路由发送特殊构造的数据包,利用报错注入获取数据库敏感信息。攻击者除了可以利用 SQL注入漏词获取数据库中的信息例如,管理员后台密码、站点的用户人人信息)之外,甚至在高权限的情况可向服务器中写入木马,进一步获取服务器系统权限poc验证是否存在漏洞如果你想查询用户名和密码。

holyxp的博客 4001

宽压 DC⇌DC 也能“随心所欲”——全桥 LLC 混合控制硬核拆解

硬件派 vs. 软件派:多电平是“器件堆砌”,混合控制是“算法魔改”。预算紧 → 先搞软件。仿真别嫌烦:PLECS 把两条曲线扫透,切换点、死区、φ 都调到波形平滑再上板。温升留 20 ℃ 余量:车规≥125 ℃,实验室测 105 ℃ 就算危险,别玩极限。

weixin_43199439的博客 924

lougu P1168 中位数

lougu P1168 中位数 问题描述 给出一个长度为N的非负整数序列AiA_iAi​,对于所有 1≤k≤(N+1)/21≤k≤(N + 1)/21≤k≤(N+1)/2,输出A1A_1A1​, A3A_3A3​, …, A2k−1A_{2k - 1}A2k−1​ 的中位数。即前1,3,5个数的中位数。 输入格式 第1行为一个正整数N,表示了序列长度。 第2行包含N个非负整数AiA_iAi​...

艺术就是生命的博客 186

NAS新玩法!豆瓣与迅雷结合,轻松实现自动下载电影自动追剧功能

NAS新玩法!豆瓣与迅雷结合,轻松实现自动下载电影自动追剧功能

XiaoqiangClub的博客 6386

[luogu]P1168 中位数[堆]

[luogu]P1168 中位数 题目描述 给出一个长度为N的非负整数序列A[i],对于所有1 ≤ k ≤ (N + 1) / 2,输出A[1], A[3], …, A[2k - 1]的中位数。即前1,3,5,……个数的中位数。 输入输出格式 输入格式: 输入文件median.in的第1行为一个正整数N,表示了序列长度。 第2行包含N个非负整数A[i] (A[i] ≤ ...

dejuan4793的博客 225

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

【洛谷】P1168 中位数

【代码】【洛谷】P1168 中位数。

数学、算法爱好者的博客 455

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

洛谷p1168中位数题解

洛谷p1168中位数题解

2201_75683257的博客 511

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

洛谷在线测试P1168_中位数

/* Name: P1168_中位数 Copyright: Author: 巧若拙 Date: 01-03-17 07:37 Description: P1168 中位数 题目描述 给出一个长度为N的非负整数序列A[i],对于所有1 ≤ k ≤ (N + 1) / 2,输出A[1], A[3], …, A[2k - 1]的中位数。 即前1,3,5,……个数的中位数。

QiaoRuoZhuo的专栏 1166

【洛谷】P1168 中位数 的题解

谔谔,教练讲的这是一题线段树,看半天看不出来,也不会做,只好去看题解。其他的题解讲什么主席树,平衡树,分块,结果看完第一篇人都傻了。然后每次插入后,直接输出当前容器内第 $\frac{size() - 1}{2} $项即可。不懂就问,这是什么标签啊,《线段树》《二分》《堆》《树状数组》qaq。来二分大于等于该数的数的指针,使得每次插入完都是已经排好序。,但是常数极小,而且跑不满,再加个快读快写就行,甚至。因为每次插入后排序时间代价太大,则插入采用。当然啦,不太建议这种水过去的作法qaq。

ZH_qaq的博客 775
上一篇: 10424 - 约瑟夫问题
下一篇: P7870 「Wdoi-4」兔已着陆
python_ok
博客等级 码龄5年 3粉丝 14原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值