HDU_5249(百度之星D题)
因为之前没写过平衡树的题,所以很自然地只会用set来写。。。然后,很蠢地想直接找set容器中间位置的那个值,结果iterator没有重载+唉。。。翻了一下AC的代码(果然有跟我一样用set来写的),然后发现是两个set容器解决了这个问题。。。其实很容易想到,一个set容器放前一半的数,一个set容器放后一半的数,就行了。。。
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#include <cstdlib>
#include <set>
#include <queue>
#define FOR(i,x,y) for(int i = x;i < y;i ++)
#define IFOR(i,x,y) for(int i = x;i > y;i --)using namespace std;int n;int main()
{//freopen("test.in","r",stdin);int tCase = 0;while(~scanf("%d",&n)){printf("Case #%d:\n",++tCase);int num;queue <int> s;set <int> p,q;char str[10];while(n--){getchar();scanf("%s",str);if(str[0] == 'q'){printf("%d\n",*(q.begin()));}else if(str[0] == 'i'){scanf("%d",&num);s.push(num);if(q.empty() || num < *(q.begin())){p.insert(num);}elseq.insert(num);}else{int v = s.front(); s.pop();if(p.find(v) != p.end()){p.erase(v);}elseq.erase(v);}while(p.size() > q.size()){set <int> :: iterator it = p.end();it--;int v = *it;p.erase(it);q.insert(v);}while(q.size() > p.size()+1){set <int> :: iterator it = q.begin();int v = *it;p.insert(v);q.erase(it);}}}return 0;
}
转载于:https://www.cnblogs.com/hqwhqwhq/p/4555869.html
HDU_5249(百度之星D题)相关推荐
- 列变位法解密--百度之星B题
http://bestcoder.hdu.edu.cn/contests/contest_showproblem.php?cid=584&pid=1002 关于百度之星的晋级规则说明 列变位法 ...
- 2013年3月百度之星B题
Sigma Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65535/32768K (Java/Other) Problem Descr ...
- 百度之星第一题竟然没过
找了一下bug,还是发现自己思维不够严密,左部为一个字符时竟然没法转换,改了一下,以后再看罗. #include "stdio.h" #include "string&q ...
- 2013年3月百度之星A题
伪随机数生成器 题目描述 baidu熊最近在学习随机算法,于是他决定自己做一个随机数生成器. 这个随机数生成器通过三个参数c, q, n作为种子, 然后它就可以通过以下方式生成伪随机数序列: m0= ...
- 2016 百度之星 B题(java实现)
Problem B Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Probl ...
- 百度之星A题 调查问卷
调查问卷 Accepts: 1546 Submissions: 6596 Time Limit: 6500/6000 MS (Java/Others) Memory Limit: 262144/262 ...
- 三个角色,十五年,二十万选手:我们如何理解“百度之星”?
你在上学时,有幻想过那些漫画主角般的经历吗? 就是经历千辛万苦,见证世界之大和高手无数,最终登上世界顶峰,迈入时代前沿.这种<灌篮高手><足球小将>里的剧情,大多数人只在看漫画 ...
- 2014百度之星资格赛第一道Energy Conversion
Problem Description 魔法师百小度也有遇到难题的时候--现在,百小度正在一个古老的石门面前,石门上有一段古老的魔法文字,读懂这种魔法文字需要耗费大量的能量和大量的脑力.过了许久,百小 ...
- 2014年百度之星资格赛第一题Energy Conversion
2014年百度之星资格赛第一题Energy Conversion Problem Description 魔法师百小度也有遇到难题的时候-- 如今,百小度正在一个古老的石门面前,石门上有一段古老的魔法 ...
最新文章
- 超神了!因为一次接口超时,我一路排查到了内核代码
- MYSQL数据库从A表把数据插入B表
- 大专学java还是python_零基础应该选择学习 java、php、前端 还是 python?
- stm32_CAN总线知识
- python库迁移到没有网的电脑_关于换机器后python库的迁移-偷懒做法
- 17.后台管理注册审核接口
- linux 6.3 vnc安装包,CentOS 6.3安装和配置VNC
- php laravel 默认cookie加密 读取怎么办_Laravel+Nginx轻松实现读写分离、负载均衡,网站并发能力提升N倍...
- tomcat6配置log4j日志
- [原]解决win2003 iis6 部署MVC 无法访问 403 的问题
- mysql 数据库的维护,优化
- 2013年全国天线年会参展商名录及观展指南
- listmanager htdocs
- 大学计算机音乐一起学,和学生一起学音乐
- JavaScript简史
- debian linux手机安装,在 Android 系统上安装 Debian Linux 与 R
- 清华大学用6个无线传感器搞定全身动作捕捉,可跑可跳可打滚
- 御手洗sama 网易宝面试:java程序员(其实我根本不记得我投的是什么了,但是一直问的是java,应该就是java了)...
- 高性能MySQL -- 查询性能优化
- python 找对称数
热门文章
- 中根遍历二叉查找树所得序列一定是有序序列_二叉搜索树(BST)
- html5中preclass,为什么HTML5建议把代码元素放在pre?
- python生成html报表_python生成HTMl报告(unittest)
- 数字范围按位与Python解法
- 大数据中常见的端口号 总结汇总大全(最新)
- vue a-sub-menu 添加点击事件报错_Vue+TS 使用的问题(持续更)
- java获取ip地址不重复,如何在android(Java)中验证Ip地址[重复]
- 底层框架_你有必要了解一下Flink底层RPC使用的框架和原理
- 基于 xilinx vivado 的PCIE ip核设置与例程代码详解
- linux下用u盘安装xp系统安装教程,全新Linux笔记本电脑用U盘装Win7/XP系统教程