POJ--2104 K-th Number (主席树模版题)
求区间第k大
#include<iostream> #include<cstring> #include<algorithm> #include<vector> #include<stdio.h> using namespace std; #define maxn 100009 #define LL long long #define mem(a,b) memset(a,b,sizeof(a)) struct ac{ int va,l,r; }tre[maxn*]; ; vector<int>q; int getid(int x){ ); } void updata(int l,int r,int &x,int y,int z){ tre[++tot]=tre[y]; tre[tot].va++; x=tot; if(l==r) return ; ; if(z>mid){ updata(mid+,r,tre[x].r,tre[y].r,z); }else updata(l,mid,tre[x].l,tre[y].l,z); } int query(int l,int r,int x,int y,int z){ if(l==r) return l; int s=tre[tre[x].l].va-tre[tre[y].l].va; ; if(s>=z){ return query(l,mid,tre[x].l,tre[y].l,z); } ,r,tre[x].r,tre[y].r,z-s); } int main(){ int n,m; cin>>n>>m; mem(a,); mem(tre,); ;j<=n;j++){ scanf("%d",&a[j]); q.push_back(a[j]); } sort(q.begin(),q.end()); q.erase(unique(q.begin(),q.end()),q.end()); int len=q.size(); ;j<=n;j++){ int x=getid(a[j]); updata(,len,root[j],root[j-],x); } ;j<m;j++){ int l,r,x; scanf("%d%d%d",&l,&r,&x); cout<<q[query(,len,root[r],root[l-],x)-]<<endl; } }
POJ--2104 K-th Number (主席树模版题)的更多相关文章
- 【POJ 2104】 K-th Number 主席树模板题
达神主席树讲解传送门:http://blog.csdn.net/dad3zz/article/details/50638026 2016-02-23:真的是模板题诶,主席树模板水过.今天新校网不好,没 ...
- SPOJ MKTHNUM & POJ 2104 - K-th Number - [主席树模板题]
题目链接:http://poj.org/problem?id=2104 Description You are working for Macrohard company in data struct ...
- 主席树:POJ2104 K-th Number (主席树模板题)
K-th Number Time Limit: 20000MS Memory Limit: 65536K Total Submissions: 44952 Accepted: 14951 Ca ...
- HDU--4417 Super Mario (主席树模版题)
题目链接 题目让求 L R区间 不大于H 的数有多少 数据太大需要离散化 #include<bits/stdc++.h> using namespace std; #define maxn ...
- 静态区间第k大(主席树)
POJ 2104为例(主席树入门题) 思想: 可持久化线段树,也叫作函数式线段树,也叫主席树(高大上). 可持久化数据结构(Persistent data structure):利用函数式编程的思想使 ...
- hdu_2665_Kth number(主席树)
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=2665 题意:给你一个区间,让你找这个区间第K大的数 题解:主席树模版题,也可以用划分树 #includ ...
- POJ 2104:K-th Number(主席树静态区间k大)
题目大意:对于一个序列,每次询问区间[l,r]的第k大树. 分析: 主席树模板题 program kthtree; type point=record l,r,s:longint; end; var ...
- poj 2104 K-th Number 主席树+超级详细解释
poj 2104 K-th Number 主席树+超级详细解释 传送门:K-th Number 题目大意:给出一段数列,让你求[L,R]区间内第几大的数字! 在这里先介绍一下主席树! 如果想了解什么是 ...
- poj 2104 K-th Number(主席树 视频)
K-th Number 题意: 给你一些数,让你求一个区间内,第k大的数是多少. 题解: 主席树第一题,看的qsc视频写的,戳戳戳 学到了unique函数,他的作用是:把相邻的重复的放到后面,返回值是 ...
随机推荐
- [转帖]前端-chromeF12 谷歌开发者工具详解 Sources篇
前端-chromeF12 谷歌开发者工具详解 Sources篇 原贴地址:https://blog.csdn.net/qq_39892932/article/details/82498748 cons ...
- HDU 2459 Maximum repetition substring
题目:Maximum repetition substring 链接:http://acm.hdu.edu.cn/showproblem.php?pid=2459 题意:给你一个字符串,求连续重复出现 ...
- sqlyog Can't connect to MySQL server on localhost (0)
https://blog.csdn.net/l1336037686/article/details/78940223
- Unit 1.前端基础之html
一.什么是html 定义:全称是超文本标记语言(HyperText Markup Language),它是一种用于创建网页的标记语言.标记语言是一种将文本(Text)以及文本相关的其他信息结合起来,展 ...
- Ionic常用命令
安装ionic npm install -g ionic 更新www/lib/ionic 目录的文件,如有项目中有bower,此命令会运行bower update ionic, 否则则会从CDN上下载 ...
- Android——Service介绍与例子
官方定义:Service(服务)是一个没有用户界面的在后台运行执行耗时操作的应用组件.其他应用组件能够启动Service,并且当用户切换到另外的应用场景,Service将持续在后台运行.另外,一个组件 ...
- python 第三方包安装
1.tqdm 安装 pip install tqdm 使用时可能会报缺少stopwords.punkt错,原因是缺失相应文件,下载即可: import nltk nltk.download('sto ...
- Lodop打印较大的超出纸张的图片
ADD_PRINT_IMAGE打印图片时,如果一个图片过大,超出纸张,默认超出部分是不显示的,也不会分页.最近遇到有人利用ADD_PRINT_URL打印图片,说图片自动分了多页,因为这个方法一般是用来 ...
- faster rcnn训练自己的数据集
采用Pascal VOC数据集的组织结构,来构建自己的数据集,这种方法是faster rcnn最便捷的训练方式
- hdu-3068(最长回文子串-manacher)
题意:求一个字符串#include<iostream>#include<algorithm>#include<cstring>using namespace std ...