题目描述

给出一个长度为N的非负整数序列A[i],对于所有1 ≤ k ≤ (N + 1) / 2,输出A[1], A[2], …, A[2k - 1]的中位数。[color=red]即[/color]前1,3,5,……个数的中位数。

输入输出格式

输入格式:

输入文件median.in的第1行为一个正整数N,表示了序列长度。

第2行包含N个非负整数A[i] (A[i] ≤ 10^9)。

输出格式:

输出文件median.out包含(N + 1) / 2行,第i行为A[1], A[2], …, A[2i – 1]的中位数。

输入输出样例

输入样例#1:

7
1 3 5 7 9 11 6

输出样例#1:

1
3
5
6

说明

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

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

对于100%的数据,N ≤ 100000。

思路:

  两个堆,一个大根堆,一个小根堆

  大根堆存比中位数小的数

  小根堆存比中位数大的数

  每读两个数就维护一下当前中位数

  然后输出

  轻松ac

来,上代码:

#include <queue>
#include <cstdio>using namespace std;int n,now,now_,size_s,size_l;priority_queue<int>small;
priority_queue<int>large;int main()
{scanf("%d",&n);scanf("%d",&now);printf("%d\n",now);for(int i=2;i<=n;i++){scanf("%d",&now_);if(now_>=now){large.push(now_*-1);size_l++;}else{small.push(now_);size_s++;}if(i%2){if(size_l>size_s){now_=large.top()*-1;small.push(now);now=now_;large.pop();size_l--;size_s++;}else if(size_s!=size_l){now_=small.top();large.push(now*-1);now=now_;small.pop();size_s--;size_l++;}printf("%d\n",now);}}return 0;
}

转载于:https://www.cnblogs.com/IUUUUUUUskyyy/p/6218347.html

AC日记——中位数 洛谷 P1168相关推荐

  1. AC日记——传染病控制 洛谷 P1041

    传染病控制 思路: 题目想问的是: 有一棵树: 对于除1外每个深度可以剪掉一棵子树: 问最后剩下多少节点: 题目意思一简单,这个题立马就变水了: 搜索就能ac: 数据有为链的情况,按深度为层次搜索的话 ...

  2. AC日记——魔方 洛谷 P2007

    魔方 思路: 模拟: 代码: #include <cstdio> #include <cstring> #include <iostream> #include & ...

  3. AC日记——独木桥 洛谷 p1007

    题目背景 战争已经进入到紧要时间.你是运输小队长,正在率领运输部队向前线运送物资.运输任务像做题一样的无聊.你希望找些刺激,于是命令你的士兵们到前方的一座独木桥上欣赏风景,而你留在桥下欣赏士兵们.士兵 ...

  4. AC日记——潜伏者 洛谷 P1071 (模拟)

    题目描述 R 国和 S 国正陷入战火之中,双方都互派间谍,潜入对方内部,伺机行动.历尽艰险后,潜伏于 S 国的 R 国间谍小 C 终于摸清了 S 国军用密码的编码规则: 1. S 国军方内部欲发送的原 ...

  5. [洛谷] P1168 中位数

    题目描述 给出一个长度为NN的非负整数序列 AiA_iAi​,对于所有 1≤k≤(N+1)/21≤k≤(N+1)/21≤k≤(N+1)/2,输出 A1A_1A1​, A1∼A3A_1 \sim A_3 ...

  6. 洛谷P1168 中位数

    题目描述 给出一个长度为NN的非负整数序列A_iAi​,对于所有1 ≤ k ≤ (N + 1) / 21≤k≤(N+1)/2,输出A_1, A_1 \sim A_3, -,A_1 \sim A_{2k ...

  7. [AC自动机][dfs] 洛谷 P2444 病毒

    题目描述 二进制病毒审查委员会最近发现了如下的规律:某些确定的二进制串是病毒的代码.如果某段代码中不存在任何一段病毒代码,那么我们就称这段代码是安全的.现在委员会已经找出了所有的病毒代码段,试问,是否 ...

  8. 洛谷-DFS-1101-单词方阵-个人AC题解及公共题解的笔记

    先上自己AC代码(博主这个代码修改过多次,只因代码长度过长) #include<bits/stdc++.h> using namespace std; #define MAXN 102 i ...

  9. 洛谷P1914题解——(本地测试AC但是交题爆零全WA)使用getchar();

    本题最大的坑在于: windows环境下的换行符为\r\n,linux环境的换行符为\n. 我们再来看看洛谷的部分OJ判题机数据和机制 常见"我在本地/xxOJ AC了.洛谷却不过" ...

最新文章

  1. 【怎样写代码】小技巧 -- 关于方法中修饰形参的关键词
  2. digitalocean添加ssh_keys
  3. Spring工厂注入例子
  4. 这个文件传输神器完爆 FTP
  5. php爬去百度图片,python爬虫:随心所欲地爬取百度图片
  6. GO 从零开始的语法学习二
  7. java接口自动化测试的搭建_java接口自动化(一) - 接口自动化测试整体认知 - 开山篇(超详解)...
  8. 【测试】软件测试计划的编写
  9. 项目里面遇到的问题和解决方案的记录
  10. 索爱小蜜蜂扩音器怎么样啊~
  11. 【大数据】Linkis是什么呢
  12. 《JavaScript》条件运算符
  13. 中国长白山国际林海雪地马拉松节将于三月底举办
  14. 快速上手ndk开发! Mac/Win下配置和使用!(2018.4重编版)
  15. 【目标检测】英雄联盟能用YOLOv5实时目标检测了 支持onnx推理
  16. 人在江湖,以“核”为贵
  17. LeetCode56. 合并区间(Java贪心解法)
  18. Convolutional Neural Network based Multiple-Rate Compressive Sensing for Massive MIMO CSI Feedback:
  19. js 中文转拼音缩写
  20. 毛笔笔刷书法签名手写字体设计 Brightwall – Brush Signature Font

热门文章

  1. 如何对.NET远程处理框架相关知识简介
  2. linux下 DNS配置过程『罗斌原创』
  3. PowerDesigner对列增加注释
  4. hibernate 一对多、多对多的配置
  5. PHP ob_start() 函数介绍
  6. ORACLE 计算时间相减间隔
  7. VB6 调用 Nim 生成的 DLL
  8. 关于WinForm的博客推荐
  9. 类: property
  10. 047_BOM_DOM