E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
主席树
[BZOJ2653]middle(二分+
主席树
)
题目描述传送门题解可以发现所有满足条件的中位数是具有单调性的,也就是说,如果M′#include#include#includeusingnamespacestd;#defineN20005intn,Q,a,b,c,d,ans,sz;structhp{intval,id;}s[N];introot[N],q[5];intsum[N*20],lmax[N*20],rmax[N*20],ls[N*20
Clove_unique
·
2016-12-12 20:46
题解
可持久化
[BZOJ3772]精神污染(dfs序+
主席树
)
题目描述传送门题解对于每一条链计算能完全覆盖它的有多少条。处理出来dfs序了之后,可以发现边大概分为三种情况:x和y的lca不是x和y中的某一个,x和y的lca是x或y,还有就是一条路径就是一个点。对于第一种情况,能覆盖它的路径一定是一个端点在x的子树里,一个端点在y的子树里。对于第二种情况,能覆盖它的路径一定是一个端点在y的子树里,另外一个端点在x的子树外。对于第三种情况,除了计算和第二种情况相
Clove_unique
·
2016-12-12 15:23
题解
可持久化
dfs序
[BZOJ3772]精神污染(dfs序+
主席树
)
题目描述传送门题解对于每一条链计算能完全覆盖它的有多少条。处理出来dfs序了之后,可以发现边大概分为三种情况:x和y的lca不是x和y中的某一个,x和y的lca是x或y,还有就是一条路径就是一个点。对于第一种情况,能覆盖它的路径一定是一个端点在x的子树里,一个端点在y的子树里。对于第二种情况,能覆盖它的路径一定是一个端点在y的子树里,另外一个端点在x的子树外。对于第三种情况,除了计算和第二种情况相
Clove_unique
·
2016-12-12 15:23
题解
可持久化
dfs序
[BZOJ3545][ONTAK2010]Peaks(splay启发式合并)
这题还有
主席树
的做法,就是通过排序之后将点重新编号,保证在任何时刻和某一个点连通的所有点组成一个连续的区间,然后实际上就是一个静态
主席树
找区间第k大了。
Clove_unique
·
2016-12-11 18:25
题解
平衡树
启发式合并
[spoj D-query]
主席树
求区间不同数
[spojD-query]
主席树
求区间不同数题目链接:[spojD-query]题意描述:给定N个数a1,a2,…,an,Q个询问。每次查询求区间中不同数的个数。
Xingw-Xiong
·
2016-10-20 11:07
ACM____主席树
[poj 2104 K-th Number]
主席树
区间第K大
[poj2104K-thNumber]
主席树
区间第K大题目链接:[poj2104K-thNumber]题意描述:给定N个数a1,a2,…,an,M次查询,每次查询区间第L个数到第R个数中的第K大数。
Xingw-Xiong
·
2016-10-19 19:16
ACM____主席树
练习题目-动态第k小
树套树、树状数组+
主席树
、整体二分、块状链表....哪个他没用过。我们啊,还是太naive了。小M为了教我们点人生经验,于是需要教会我们求第K小。
AndyLau96
·
2016-10-18 22:34
SPOJ COT Count on a tree 树上第k大(
主席树
)
题意:http://www.spoj.com/problems/COT/en/题意:给定一棵树,树上每个节点都有一个权值,问两点之间路径上第K大值思路:树上的第k大值,跟区间第k大有些不同,区间第k大每个值在前一个值的基础上新建一棵树,而树上第k大则是在父亲节点的基础上新建一棵树。查询的时候,答案就是root[v]+root[u]-root[lca(v,u)]-root[fa[lca(v,u)]]
霜刃未曾试
·
2016-10-02 15:28
主席树
JZOJ4793. 妮厨的愤怒
时间复杂度:O(nlogn)SRC//
主席树
#incl
Akakii
·
2016-09-22 22:43
Manacher
JZOJ4793. 妮厨的愤怒
时间复杂度:O(nlogn)SRC//
主席树
#inc
Akak__ii
·
2016-09-22 22:00
BZOJ 3295: [Cqoi2011]动态逆序对 (树状数组套
主席树
)
题面:对于序列A,它的逆序对数定义为满足iAj的数对(i,j)的个数。给1到n的一个排列,按照某种顺序依次删除m个元素,你的任务是在每次删除一个元素之前统计整个序列的逆序对数。对于已经存在的序列进行删除不是很好操作,不妨先倒过来想,假设我们将这些数空缺,然后倒序加入序列中是否可行,很明显可以,那么剩下的问题就是对于当前加入的书产生了多少个逆序对,对于新添入一个数来说,产生的逆序对一定是当前序列中1
wJs9528-1
·
2016-08-22 16:33
===数据结构===
主席树
spoj DQUERY - D-query(区间不同数的个数
主席树
or BIT)
可以用
主席树
也可以用树状数组,做法都是同一个原理。从左往右扫一遍,记录每个数上一次出现的位置。当扫到i位置时,把a[i]上一次出现的位置-1,i这个位置+1。
KIJamesQi
·
2016-08-21 12:49
数据结构-线段树
数据结构-树状数组
hdu 5857 Median (
主席树
写法)
题意:给出一个有序的数列.求由A[l1]~A[r1]与A[l2]~A[r2]组成的新序列的中位数.题解:比赛时没看见有序,直接套了
主席树
,越写越乱,赛后改一下过了#include#include#include
Ezereal
·
2016-08-19 09:44
数据结构—主席树
多校赛第7场 hdu5820 Lights
主席树
hdu5820Lights比赛时候卡在一个构造题上了,结束改了一行1A,心痛。。没有时间看别的题,这是个很严重的问题。。题意一个50000x50000的网格,上面有500000个红绿灯(整点),问这些红绿灯两两之间是否都有一条这样的路,使得路上每个转弯点都有交通灯。解法题解上感觉写的有点问题。对于每个交通灯,找到距离它最近的上下左的交通灯(若没有则视为边界有),由这四个点可以构成一个矩形。这个矩形
CZWin32768
·
2016-08-10 13:18
hdu
多校赛
主席树
[BZOJ4539][Hnoi2016]树(dfs序+
主席树
+lca)
题目描述传送门题解可以看出在原树上的每一次复制都是一棵完整的子树,用dfs序表示出来就是一段连续的区间。称原来给的大小为n的树为模板树,最后得到的树为答案树,把一次操作增加的节点看成一块,然后构成的树称为大树。我们就需要将模板树和答案树结合起来计算答案。答案树上两点的距离=两点分别走到所在块的根,在大树上走到两个块的lca,撤销进入块lca后两个点共同走过的路径。第一步的答案就是找到点到它所在块的
Clove_unique
·
2016-08-05 18:11
题解
lca
省选
可持久化
dfs序
bzoj 4539: [Hnoi2016]树(缩点+
主席树
+lca)
4539:[Hnoi2016]树TimeLimit:40SecMemoryLimit:256MBSubmit:442Solved:173[Submit][Status][Discuss]Description小A想做一棵很大的树,但是他手上的材料有限,只好用点小技巧了。开始,小A只有一棵结点数为N的树,结点的编号为1,2,…,N,其中结点1为根;我们称这颗树为模板树。小A决定通过这棵模板树来构建一
clover_hxy
·
2016-08-04 19:51
倍增
LCA
主席树
2016hdu多校赛第5场(hdu5790)
主席树
(Persistent Segment Tree)
主席树
也就是PersistentSegmentTree,可持久化线段树。一般来讲线段树更新之后不会使用历史版本的线段树的信息,但是有些问题里面需要。
CZWin32768
·
2016-08-04 19:10
hdu
多校赛
主席树
字典树
POJ 2104 K-th Number (划分树,
主席树
写过了,这次是整体二分解法 )
还是先描述一下题意:给出一个长度为n的数列,m次询问区间内的第k大数对划分树,
主席树
和整体二分通过这题做了一下比较划分树 1000ms+
主席树
2000ms+整体二分1500ms+整体二分介于两者之前,对于这题复杂度约莫是
Forever_wjs
·
2016-07-03 16:00
整体二分初步
先说说第k大数吧,这种问题是整体二分的标志性题目,什么划分树啊,
主席树
啊,树套树啊见了整体二分都得自叹不如。
cnyali
·
2016-06-16 15:45
程序代码
算法分享
BZOJ2223 [Coci 2009]PATULJCI 题解&代码
题解:标准
主席树
…
主席树
还是这么简单粗暴QwQ但是我MLE了好多次,这空间卡得我怀疑人生…不过最后的错误反而不在空间233333我把n和m弄错了WA了好几次,总之是简单错误啦和BZOJ3524是一道题,
Rainbow6174
·
2016-06-01 21:45
BZOJ
主席树
BZOJ学习记录
BZOJ2223 [Coci 2009]PATULJCI 题解&代码
题解:标准
主席树
…
主席树
还是这么简单粗暴QwQ但是我MLE了好多次,这空间卡得我怀疑人生…不过最后的错误反而不在空间233333我把n和m弄错了WA了好几次,总之是简单错误啦和BZOJ3524是一道题,
Rainbow6174
·
2016-06-01 21:00
POJ2104 —— K-th number
2、分析:这个是可持久化线段树,也是
主席树
,解释一下,n个线段树是怎么存下的,就是每一颗线段树和前一个有logn个点不一样然后我们只需要一个线段树开logn的空间,然后其他的指针指向上一个线段树对应的地方也是可以的对吧然后
qzh_1430586275
·
2016-05-18 08:00
number
poj
主席树
K-th
2104
BZOJ1901——Zju2112 Dynamic Rankings
1、题目大意:区间第k小,有单点修改2、分析:这个是树状数组套线段树,也是
主席树
。。。。为什么
主席树
这么多QAQ就是树套树的那种插入什么的,注意啊,一定要动态开内存。。不然会爆。。
qzh_1430586275
·
2016-05-18 08:00
dynamic
rank
主席树
bzoj
树状数组套线段树
1901
Zju2112
hdu5412——CRB and Queries
1、题目大意:区间第k大,单点修改2、随便搞搞就好了==,树套树或
主席树
,我写的很丑#include #include #include #include usingnamespacestd; structNode
qzh_1430586275
·
2016-05-18 08:00
二分
and
Queries
CRB
主席树
树套树
hdu5412
poj2104K-th Number (
主席树
)
K-thNumberTimeLimit:20000MS MemoryLimit:65536KTotalSubmissions:46886 Accepted:15682CaseTimeLimit:2000MSDescriptionYouareworkingforMacrohardcompanyindatastructuresdepartment.Afterfailingyourprevioustas
su20145104009
·
2016-05-17 20:00
poj
poj2104
主席树
可持久化线段树
2104
CWOJ 1198
主席树
之区间第k大
problem_id=1198出这道题的目的是学习最基础
主席树
,对已掌握
主席树
的选手,完全不需要去看,对完全不会
主席树
的同学,有学习的价值稍后可能附上具体思路代码如下:#include #include
UESTC_peterpan
·
2016-05-15 01:00
HDU 4757 Tree
可持久化Trie,大概和树上
主席树
一个做法(竟然轻易地就1A了)#include #include #include #include #include #include usingnamespacestd
nlj1999
·
2016-05-14 08:00
[BZOJ2809][Apio2012]dispatching(枚举&dfs序+
主席树
||可并堆||splay+启发式合并)
题目描述传送门题解1°
主席树
枚举每一个忍者当管理者,由于选忍者的顺序满足薪水单调不减,可以用dfs序+
主席树
维护出子树中权值之和小于等于k最多有多少个。
Clove_unique
·
2016-05-13 20:00
枚举
bzoj
apio
dfs序
主席树
[BZOJ2588]Count on a tree(可持久化权值线段树|
主席树
)
题目描述传送门题解在树上建维护当前节点到根的路径的权值线段树,然后查询的时候为sum[a]+sum[b]-sum[lca(a,b)]-sum[father[lca(a,b)]]。代码#include#include#include#includeusingnamespacestd;constintmax_n=1e5+5;constintsz=17;constintmax_e=max_n*2;con
Clove_unique
·
2016-05-13 20:41
题解
可持久化
[BZOJ2588]Count on a tree(可持久化权值线段树|
主席树
)
题目描述传送门题解在树上建维护当前节点到根的路径的权值线段树,然后查询的时候为sum[a]+sum[b]-sum[lca(a,b)]-sum[father[lca(a,b)]]。代码#include #include #include #include usingnamespacestd; constintmax_n=1e5+5; constintsz=17; constintmax_e=max
Clove_unique
·
2016-05-13 20:00
bzoj
主席树
[BZOJ1901]Dynamic Rankings(动态
主席树
)
题目描述传送门题解动态
主席树
模板题,感谢hzwer的模板,自己改动了一点小地方。这就是传说中的树套树?
Clove_unique
·
2016-05-13 20:42
题解
可持久化
树套树
[BZOJ1901]Dynamic Rankings(动态
主席树
)
题目描述传送门题解动态
主席树
模板题,感谢hzwer的模板,自己改动了一点小地方。这就是传说中的树套树?
Clove_unique
·
2016-05-13 20:00
bzoj
主席树
POJ 2104 K-th Number (
主席树
静态区间第K大)
题意:给你n个不同的数字,m次询问,每次询问l->r这个区间内第k大的树是多少分析:刚学
主席树
试着写了一发,值得注意的是
主席树
是多颗线段树,并且每颗线段树存的都是插入第i个数字的状态,树中结点存储的是每个区间插入第
Forever_wjs
·
2016-05-12 22:00
POJ 2104 K-th Number(
主席树
)
题目链接:点击打开链接细节参见代码:#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #defineMax(a,b)((a)>(b)?(a):(b)) #defineMin(a,b
weizhuwyzc000
·
2016-05-12 22:00
poj
主席树
BZOJ4571 [Scoi2016]美味
区间最大异或值的经典做法是可持久化trie,但是加上一个数的话可持久化trie就变得非常的扯淡考虑可持久化trie其实可以等价为一颗上限为2^k-1的
主席树
,在trie上确定一位其实相当于将答案的区间缩小的一半
neither_nor
·
2016-05-11 20:00
bzoj3065带插入区间K小值
这题其实好像很难,但是听werkeytom_ftd说可以用块链水,于是就很开心地去打了个块状链表套
主席树
,插入操作就直接插到一个块中,注意如果块的大小2*block就将块分开,注意每一个修改或插入都要修改后继的状态
samjia2000
·
2016-05-10 22:00
链表
分块
块状链表
主席树
简介
从线段树开始先来看下这道线段树的题:CWOJ1197线段树之查询第k大带修改题目描述有N个箱子,分别放在[1,N]区间的整点上,一个整点上可以有多个箱子。比如,N=7,X={1,2,2,5,6,7,7},表示1,5,6三个点上分别有一个箱子,2,7两个点上分别有两个箱子每组数据,首先给出N和X。接下来有三种操作,查询和修改1.(Q,k):查询[1,N]区间上第k个箱子所在的位置。比如X={1,2,
UESTC_peterpan
·
2016-05-10 14:00
hdu 3727(
主席树
例题)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3727题意是有4种操作1、在项链后面插入一个珍珠,保证每一个珍珠都不一样2、查询第l到第r个珍珠之间第k大的珍珠的大小3、假设把所有珍珠按照大小排序,查询size为x的珍珠的排名4、查询所有珍珠里第k大的珍珠的大小题目只需要输出2,3,4询问的所有答案即可第3个询问很简单,不谈。第4个询问本质上和上一道
UESTC_peterpan
·
2016-05-10 14:00
【BZOJ3110】【codevs1616】K大数查询,权值线段树套普通线段树
Time:2016.05.09Author:xiaoyimi转载注明出处谢谢传送门1传送门2思路:之前没怎么接触过权值线段树(非
主席树
),这次就当学习了一下吧。
xym_CSDN
·
2016-05-09 13:00
【BZOJ1901】Dynamic Rankings,树状数组套
主席树
Time:2016.05.09Author:xiaoyimi转载注明出处谢谢传送门(权限)题面1901:Zju2112DynamicRankingsTimeLimit:10SecMemoryLimit:128MBSubmit:6678Solved:2777[Submit][Status][Discuss]Description给定一个含有n个数的序列a[1],a[2],a[3]……a[n],程序必
xym_CSDN
·
2016-05-09 07:00
【BZOJ3932】任务查询系统,
主席树
与差分的建树思想
Time:2016.05.08Author:xiaoyimi转载注明出处谢谢传送门思路:说真的我一开始做这个题真不知道怎么建树,只知道应该以时间为根建树,记录优先值并维护前缀和,但想不出怎么用到
主席树
的前缀建树思想
xym_CSDN
·
2016-05-08 07:00
【BZOJ3439】Kpm的MC密码,trie树+dfs序+
主席树
xiaoyimi转载注明出处谢谢传送门思路:1.haveatrie,还得是倒着建的,记录每个结尾节点的id(可能会有重复,所以开一个vector记录一下)2.对trie树进行dfs序,记录结尾节点的子树区间3.建立
主席树
xym_CSDN
·
2016-05-07 21:00
【BZOJ2653】middle,
主席树
(非权值线段树)维护序列和信息+二分答案
这要求我们不能像之前那样建立权值线段树的
主席树
(区间即为权值)了,而是以权值为下标,维护区间[1,n]的信息,可能有点拗口,这里就理解是我们平
xym_CSDN
·
2016-05-06 22:00
【BZOJ2588】Count on a tree,
主席树
维护链+ST表求LCA
传送门写在前面:一天下来就写了两道
主席树
的题……(codevs上的一道智障天梯不算)思路:才知道原来
主席树
不仅可以通过dfs序维护子树区间,还可以直接维护一条到根的链……我们建好
主席树
后,每次查询u->
xym_CSDN
·
2016-05-06 21:00
【BZOJ2809】【codevs1763】派遣,
主席树
记录前缀和
传送门1传送门2写在前面:祝自己生日快乐思路:题意简述为在一棵节点有特征值有费用的有根树上选定一个节点,在它的子树上找任意个节点使其总费用不超过m,要求权值最大(权值=该节点的特征值*选择的节点数)比较暴力的思路是枚举每一个节点,从它的子树上依次选取费用从小到大的节点,直到超过费用或子树上全部节点都被选了,求出最大值即可,时间复杂度O(n2)将该思路精进一下,我们发现只要维护每个子树上的点费用从小
xym_CSDN
·
2016-05-06 07:00
【BZOJ3551】Peaks加强版,
主席树
+kruskal重构+dfs序+倍增思想
传送门写在前面:一道调了不止一上午的题目思路:我们先来看一下神奇的kruskal重构树图中红色的是原图的边权,黑色的是原图上的点这样生成的树有一些十分优美的性质:1.二叉树(好吧这题意义不大)2.原树与新树两点间路径上边权(点权)的最大值相等3.子节点的边权小于等于父亲节点(大根堆)4.原树中两点之间路径上边权的最大值等于新树上两点的LCA的点权这些神奇的性质可以解决一些图上的连通性问题。对于这道
xym_CSDN
·
2016-05-05 22:00
【BZOJ3524】Couriers,第一次的
主席树
传送门(权限)题面3524:[Poi2014]CouriersTimeLimit:20SecMemoryLimit:128MBSubmit:1449Solved:508[Submit][Status][Discuss]Description给一个长度为n的序列a。1≤a[i]≤n。m组询问,每次询问一个区间[l,r],是否存在一个数在[l,r]中出现的次数大于(r-l+1)/2。如果存在,输出这个
xym_CSDN
·
2016-05-05 21:00
K-th Number【POJ2104】——
主席树
TimeLimit:20000MSMemoryLimit:65536KCaseTimeLimit:2000MSDescriptionYouareworkingforMacrohardcompanyindatastructuresdepartment.Afterfailingyourprevioustaskaboutkeyinsertionyouwereaskedtowriteanewdatastr
huayunhualuo
·
2016-05-05 21:00
zoj2112 Dynamic Rankings (
主席树
|| 树套树)
TheCompanyDynamicRankingshasdevelopedanewkindofcomputerthatisnolongersatisfiedwiththequeryliketosimplyfindthek-thsmallestnumberofthegivenNnumbers.TheyhavedevelopedamorepowerfulsystemsuchthatforNnumber
Kirito_Acmer
·
2016-05-05 20:00
treap
主席树
bzoj 3524: [Poi2014]Couriers(
主席树
)
3524:[Poi2014]CouriersTimeLimit:20SecMemoryLimit:128MBSubmit:1448Solved:507[Submit][Status][Discuss]Description给一个长度为n的序列a。1≤a[i]≤n。m组询问,每次询问一个区间[l,r],是否存在一个数在[l,r]中出现的次数大于(r-l+1)/2。如果存在,输出这个数,否则输出0。I
clover_hxy
·
2016-05-05 08:31
主席树
上一页
15
16
17
18
19
20
21
22
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他