nyoj 1261 音痴又音痴的LT(离散化+树状数组求K小数)
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=1261
解题思路:比较水的题,用离散化+树状数组求K小数即可,先用一次离线处理。
#include<iostream>
#include<cstdio>
#include<cstring>
#include<map>
#include<set>
#include<algorithm>
using namespace std;const int maxn = 100005;
struct Node
{char op[2];int num;
}p[maxn];
int n,cnt,tree[maxn];
set<int> Set;
map<int,int> Map,Rev;int lowbit(int x)
{return x & -x;
}void update(int x,int d)
{while(x <= cnt){tree[x] += d;x += lowbit(x);}
}int sum(int x)
{int ans = 0;while(x > 0){ans += tree[x];x -= lowbit(x);}return ans;
}int main()
{while(scanf("%d",&n)!=EOF){cnt = 0;Map.clear();Rev.clear();Set.clear();memset(tree,0,sizeof(tree));for(int i = 1; i <= n; i++){scanf("%s",p[i].op);scanf("%d",&p[i].num);if(p[i].op[0] == 'I')Set.insert(p[i].num);}for(set<int>::iterator it = Set.begin(); it != Set.end(); it++){Map[*it] = ++cnt;Rev[cnt] = *it;}for(int i = 1; i <= n; i++){if(p[i].op[0] == 'I')update(Map[p[i].num],1);else{int l = 1,r = cnt,mid,ans = -1;while(l <= r){mid = (l + r) >> 1;int tmp = sum(mid);if(tmp >= p[i].num){ans = mid;r = mid - 1;}else l = mid + 1;}if(ans == -1) printf("-1\n");else printf("%d\n",Rev[ans]);}}}return 0;
}
nyoj 1261 音痴又音痴的LT(离散化+树状数组求K小数)相关推荐
- NYOJ 士兵杀敌(二) 树状数组
士兵杀敌(二) 时间限制:1000 ms | 内存限制:65535 KB 难度:5 描述 南将军手下有N个士兵,分别编号1到N,这些士兵的杀敌数都是已知的. 小工是南将军手下的军师,南将军经常想知 ...
- NYOJ 士兵杀敌(四) 树状数组
士兵杀敌(四) 时间限制:2000 ms | 内存限制:65535 KB 难度:5 描述 南将军麾下有百万精兵,现已知共有M个士兵,编号为1~M,每次有任务的时候,总会有一批编号连在一起人请战(编 ...
- NYOJ 116士兵杀敌(二) 树状数组
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=116 士兵杀敌(一) 数组是固定的,所以可以用一个sum数组来保存每个元素的和就行,但是不 ...
- 音视频开发---音视频同步算法
目录 ffplay简介 为什么要做音视频同步 音视频同步算法 参考 本文是对音视频同步算法的总结,以阅读ffplay.c源码为基础,结合各位博主的分析, 逐渐深入理解同步算法原理, 并根据自身理解, ...
- Snagit_日文输入法:促音,长音,小写的输入方法
Snagit使用经典 SnagIt使用方法 日文输入法:促音,长音,小写的输入方法 收藏 61 语种: 日语 分类: 日语输入法 将键盘输入调成日语输入法,根据罗马音输入,平假名和片假名还好,就是促音 ...
- 音视频开发--音视频基础
音视频基础 一.音视频录制原理 视频录制流程 1.准备摄像头 2.图像帧阶段 从摄像头采集视频数据(图像帧),采集数据格式:YUV或者RGB,YUV和RGB细分的话还包括YUV 4:4:4.YUV 4 ...
- 一台服务器控制上百个抖音账号,怎么批量管理上百个抖音,抖音mcn一键高效运营软件...
原标题:怎么批量管理上百个抖音,抖音mcn一键高效运营软件 易媒助手:文章.短视频同时分发软件 正因为憧憬收获更喜人的广告分成,通常个人选择性注册秒拍.皮皮虾等10多个热门内容平台,如果你们只同步文章 ...
- 抖音企业号抖音智能营销系统源码待开发技术。。。。。
抖音企业号抖音智能营销系统源码待开发技术:Symbol值通过Symbol函数生成.这就是说,对象的属性名现在可以有两种类型,一种是原来就有的字符串,另一种就是新增的Symbol类型.凡是属性名属于Sy ...
- 学计算机音视频教程,抖音短视频VIP教程全套合集
目录: 第01章-认知篇 01-抖音引流和变现的价值所在.mp4 02-抖音平台分析和人群分析.mp4 03-抖音流量人群的带货购买力分析.mp4 04-抖音经典营销 爆款打造案例分析.mp4 05- ...
最新文章
- java最终考核项目(实现商品管理系统)
- LeetCode 33 搜索旋转排序数组
- android9 三星 港版,三星S9官方港版安卓9完整版固件升级更新包:TGY-G9600ZHU4CSE7
- win更改文件默认打开方式
- mysql的innodb如何定位锁问题_mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?...
- [SpecialJudge]构造“神秘“字符串(洛谷P3742题题解,Java语言描述)
- 有时间同情渣男傻女,不如想想人都是怎么被臆想出来的爱情给坑了
- SQL对字符串进行排序
- C语言设计农历万年历论文,万年历设计报告
- 奇迹之剑萌新晋升大神辅助攻略 奇迹之剑游戏脚本挂机工具介绍
- 人工神经网络与遗传算法,遗传算法和神经算法
- CC++数组练习题(头歌)朋友圈点赞
- contiki学习笔记(四)、contiki系统UDP通信原理(单播、多播、RPL介绍)
- 学员故事|老男孩网络安全学习感悟,结果让我意外!
- QCC3040----PS key
- 2021章节练习基础(案例精选)30-40
- Windows10安装Linux子系统Ubuntu
- 中兴以太网板see服务器地址,see
- Linux内核驱动初探(二) TI声卡
- matlab批量处理文件夹中的csv文件(读取、处理、输出)