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
【主席树—可持久化线段树】
P3834 【模板】
可持久化线段树
1(
主席树
)难度⭐⭐⭐⭐
P3834【模板】
可持久化线段树
1(
主席树
)题解P3834【【模板】
可持久化线段树
1(
主席树
)】#include#include#include#include#include#include#definels
繁凡さん
·
2020-08-16 03:11
+++【高级数据结构】+++
#
主席树
luogu U41492 树上数颜色 (dsu on tree 或
主席树
+dfn序)
这种题还考的挺多的(口胡),我稍微总结了一下,不多,就两个题目其中一个就是luoguU41492树上数颜色另外一个是东北四省E题算是这题的加强版此处提供两种算法:1.启发式合并2.
主席树
关于启发式合并,
xtuls
·
2020-08-15 17:19
主席树
poj 2104
可持久化线段树
区间K大 不修改
poj2104区间k大不修改只查询模板#include#include#include#include#include#include#include#defineN240008#defineM5500000usingnamespacestd;intn,m,rt[N];structNode{intl,r,cnt;;}tr[N>1;tr[k].l=build(l,mid);tr[k].r=build
yukun133
·
2020-08-15 16:09
【模板】可持久化并查集
突然想起来大家都会的可持久化并查集我还不会,所以来学一下qwqqwqqwq感觉可持久化并查集就是把
主席树
上的点的存储信息改了一下。。
..、
·
2020-08-15 15:39
可持久化并查集
模板
可持久化并查集
洛谷 P3899 [湖南集训] 谈笑风生 (
主席树
)
画个图可有看出来,答案就是(记a所在的高度是dega)dega到dega+k之间的所有点的size之和(size即这个点的子树的大小)知道了这个后那么就可以转化为
主席树
进行计算。
Combatting
·
2020-08-15 15:34
数据结构
浅析[分块]qwq
首先说明这篇博客写得奇差无比让我们理清一下为什么要打分块,在大部分情况下,线段树啊,splay,treap,
主席树
什么的都要比分块的效率高得多,但是在出问题的时候如果你和这些数据结构只是混的脸熟的话,一旦错误可能就会导致心态崩溃
a6823202
·
2020-08-15 12:19
【2019年南京网络赛A题】【The beautiful values of the palace】【离散化+
主席树
】
题目链接:https://nanti.jisuanke.com/t/41298题解:这里要解决几个问题:①(x,y)(x,y)(x,y)在螺旋方阵的值②用某种数据结构查询矩形区间内元素值之和由于这里nnn很大(n≤106n\leq10^6n≤106),二维数组开不下所以问题①不能直接暴力求解,问题②不能用前缀和直接求出对于问题①,我们可以先求出点(x,y)(x,y)(x,y)在第几层(一圈一圈),
linbinwu123
·
2020-08-14 21:56
#
主席树
数据结构
2019南京网络赛A题
在线做法两个区间范围限制可以考虑
主席树
如果知道x1,x2范围y值的分布在y中进行[y1,y2]的区间和查询不就行了吗明显的
主席树
#includeusingnamespacestd;typedeflonglongll
qq_44620200
·
2020-08-14 19:45
在线做法
主席树
【洛谷P2839】middle(二分答案)(
主席树
)
这道题直接按照权值排序,以原序列标号为下标建立
主席树
,叶节点权值为在当前树中它应该为的权值,对于询问,中间的询问和,两边的询问最大前后缀即可。
zxyoi_dreamer
·
2020-08-14 08:39
二分答案
线段树
关于
主席树
的一些理解
引入:线段树:每个节点维护一段区间的信息,叶子节点代表第几个数权值线段树:维护数组元素出现的次数用途:(1)每个节点维护一个区间数出现的次数,可被查询(2)可以快速找到K-th(3)查询某数出现的次数
主席树
TRYAC
·
2020-08-14 07:05
2018.7.30T2(lca+并查集+贪心)(另有
主席树
与LCT做法)
描述蔡老板决定进军外卖行业。他刚刚高薪聘请了两位外卖小哥丁某和朱某,准备在Q城先做试点。Q城一共有n个节点组成,有m条街道连接这n个节点。对于第i条街道,它连接着ui和vi两个节点,并且有一个拥挤程度wi。如果蔡老板的外卖总部在第x号节点,那么每天两个外卖小哥需要从x点出发,经过这nn个点至少一次后再回到x号节点。他们可以经过一条边多次。但是如果他们没有在遍历完所有节点前经过了节点x,那么他们就会
1035719430
·
2020-08-14 06:30
贪心
并查集
BZOJ4012: [HNOI2015]开店 重链剖分
可持久化线段树
那题是离线排序做,那么对于这题用
可持久化线段树
来维护树链剖分就可以了。#include#
Mima_Reincarnation
·
2020-08-14 06:24
树链剖分
可持久化数据结构
BZOJ做题纪录
[HDU4417]Super Mario(
主席树
+离散化)
传送门又是一道
主席树
模板题,注意数组从0开始,还有
主席树
耗费空间很大,数组开大点,之前开小了莫名其妙TLE。
weixin_30832143
·
2020-08-14 05:10
主席树
简单入门
主席树
在每次更新的叶子节点时,记录从根节点开始一路到叶子节点的更改节点信息。每个节点值更新后,还可以通过该节点更新前的根节点查询之前的信息。
1A_coder
·
2020-08-14 05:14
线段树
LGOJ3168-[CQOI2015] 任务查询系统(
主席树
+差分)
原题面Description最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分。超级计算机中的任务用三元组(Si,Ei,Pi)(S_i,E_i,P_i)(Si,Ei,Pi)描述,(Si,Ei,Pi)(S_i,E_i,P_i)(Si,Ei,Pi)表示任务从第SiS_iSi秒开始,在第EiE_iEi秒后结束(第SiS_iSi秒和EiE_iEi秒任务也在运行),其优先级
bairui0504
·
2020-08-14 04:18
数据结构与算法
BZOJ 3295 [Cqoi2011]动态逆序对 树状数组套线段树
题意:链接方法:树状数组套线段树解析:这题基本上写的都是什么CDQ点分治,
主席树
之类的,然而这我都并不会,所以写了一发平衡树套线段树想卡时卡过去,然而我并没有得逞,T的不要不要的,这里用平衡树套线段树的方法参见我的题解
wzq_QwQ
·
2020-08-13 23:47
Tree
Tao
Tree
BZOJ刷题录
P4735 最大异或和 01可持久化Trie树模板
但是确定出给定区间的Trie树,用类似于
主席树
的思想,建一颗动态开点的Tri
Exception2017
·
2020-08-13 21:36
Trie/可持久化Trie
【
可持久化线段树
】【
主席树
】[BZOJ 3295]动态逆序对
对于序列A,它的逆序对数定义为满足iAj的数对(i,j)的个数。给1到n的一个排列,按照某种顺序依次删除m个元素,你的任务是在每次删除一个元素之前统计整个序列的逆序对数。这里可以发现对于每一个数字可以有两种做法第一种就是先建好树然后每一次删除询问在他之前有多少个比他大的,询问有多少个比他小的在他之后,然后减去(不推荐该做法)另一种做法就是首先预处理出来左边有多少个比他大的,右边有多少个比他小的,然
weixin_30586257
·
2020-08-13 20:30
主席树
初探 & bzoj 3295: [Cqoi2011] 动态逆序对 题解
【原题】3295:[Cqoi2011]动态逆序对TimeLimit:10SecMemoryLimit:128MBSubmit:778Solved:263[Submit][Status]Description对于序列A,它的逆序对数定义为满足iAj的数对(i,j)的个数。给1到n的一个排列,按照某种顺序依次删除m个元素,你的任务是在每次删除一个元素之前统计整个序列的逆序对数。Input输入第一行包含
阿蒋
·
2020-08-13 20:34
bzoj题解
算法讲解
省选题解
【bzoj3295】 CQOI2011动态逆序对 树状数组+
主席树
对于每一个位置我们处理出刚开始它左边比他大的数的个数,和它右边比它小的数的个数,然后每次删除就在
主席树
里修改,最后答案就要减去a1+a2-左边比他大的被删除了的数的个数-右边比他小的被删除了的数的个数。
qingdaobaibai
·
2020-08-13 19:52
数据结构
[BZOJ3295][Cqoi2011]动态逆序对(分块重建)
如果要在线的话将那个排序变成
主席树
即可。时
broxin
·
2020-08-13 19:53
题解
分块
BZOJ 1146: [CTSC2008]网络管理Network 【树上带修改
主席树
】
#include#include#include#defineN100005usingnamespacestd;inta[N],b[N],M,T[N],st,w[N],A[N],B[N],C[N];structTr{intc,ls,rs;}tr[8000010];inthash(intk){returnlower_bound(b,b+M,k)-b;}intbuild(intl,intr){intn
Hacb
·
2020-08-13 19:40
主席树
#
主席树
、二分、树状数组#洛谷 3157 JZOJ 2287 动态逆序对
题目分析首先如果不带修改操作那么就是一道
主席树
题目,但是既然有了修改,那么还必须用上树状数组维护,时间复杂度O(nlog2n)O(nlog^2n)O(nlog2n)代码#include#include#
ssl_xjq_逐风之刃
·
2020-08-13 19:54
二分
三分
树状数组
线段树
猫树
bzoj2120(带修改莫队 或 树状数组套
主席树
)
做法一:带修改莫队模板第一关键字:左端点的块第二:右端点块第三:前面的修改次数,这里称time#include#include#include#include#includeusingnamespacestd;constintN=10005;intn,m;intblock,pos[N],col[N];intquery_num;structaa{intl,r,time,id,ans;booloper
running_in_dark
·
2020-08-13 18:07
莫队
树状数组
主席树
补题清单
C:LivestockLineupD:MooBuzzE:Meetings思维,蚂蚁相遇+二分F:MilkPumping贪心+dijk+并查集G:MlikVistslca/树链剖分/
主席树
H:MoortalCowmbat
qq_46580275
·
2020-08-13 18:59
[CQOI2011]动态逆序对 【
主席树
+树状数组】
分块会板子(这道题不会),CDQ分治不会,只会大佬说的动态
主席树
板子题,然后拿来改一下就能过了。。。解题思路:求解逆序数,我们常常用到树状数字来解决。
什么都不会的菜鸡
·
2020-08-13 18:54
数据结构
思维
线段树 详解
单点修改+区间查询区间修改+区间查询(懒惰标记)区间合并(最后的例题就是)扫描线,和区间修改很相似,但是没有懒惰标记,难理解一点最后就是
主席树
了,一个很大的不同就是每个节点的左右儿子并不是简单的rt1)
独-
·
2020-08-13 17:32
BZOJ 3551: [ONTAK2010]Peaks加强版(
可持久化线段树
合并)
用
主席树
。发现父亲的
主席树
是由两个子树的
主席树
合并而来。可以写
可持久化线段树
合并。感觉除了不回收儿子节点以外没啥区别。用了一次fwrite,不好用。一次不用fread,TLE到死。
Freopen
·
2020-08-13 17:12
模板
图论
数据结构
线段树
[Cqoi2011]动态逆序对
主席树
套树状数组。
主席树
第一题。链接静态的逆序对问题很简单,用线段树或者是树状数组即可解决。现在的问题是如何解决一道动态的逆序对问题?我们先把所有的逆序对统计出来。
HT008_123
·
2020-08-13 17:41
题目分析
主席树
省选
HDU - 6287 口算训练 (
主席树
)(2018CCPC女生赛)
口算训练TimeLimit:8000/4000MS(Java/Others)MemoryLimit:512000/512000K(Java/Others)TotalSubmission(s):359AcceptedSubmission(s):70ProblemDescription小Q非常喜欢数学,但是他的口算能力非常弱。因此他找到了小T,给了小T一个长度为n的正整数序列a1,a2,...,an,
LP_Cong
·
2020-08-13 15:09
————ACM相关————
——数据结构——
ACM
-
主席树
USACO FEB18,Platinum
即求min(|x-y|,min{|a-x|+|b-y|+c}),考虑分类讨论后将绝对值打开,用
主席树
维护四个方向上对应的pa+qb+c(p,q为-1或1)的最小值即可。
lych_cys
·
2020-08-13 15:33
比赛
usaco
bzoj 3295: [Cqoi2011]动态逆序对 (
主席树
+树状数组, or CDQ)
Description对于序列A,它的逆序对数定义为满足iAj的数对(i,j)的个数。给1到n的一个排列,按照某种顺序依次删除m个元素,你的任务是在每次删除一个元素之前统计整个序列的逆序对数Input输入第一行包含两个整数n和m,即初始元素的个数和删除的元素个数。以下n行每行包含一个1到n之间的正整数,即初始排列。以下m行每行一个正整数,依次为每次删除的元素。N#definelow(x)(x&(-
Top_xiao
·
2020-08-13 15:13
#
主席树
洛谷 P3157 动态逆序对(归并排序+树状数组套
主席树
)
先归并排序处理出初始逆序对数然后树状数组套
主席树
进行修改和查询删除数x时(设x位置为pos[x]),从原逆序对数中减去与该数有关的逆序对数,即([1,pos[x]-1]中大于x的数的个数)+([pos[
hhz6830975
·
2020-08-13 14:54
数据结构——可持久化
【TJOI2018】 异或(可持久化01Trie+树链剖分)
传送门【题目分析】可持久化Trie与
主席树
其实没啥太大的实现上的差别,因为一次只会插入一个串,也就只会在前一个版本的Trie上改变一条链,那么其他儿子就可以与
主席树
类似的操作直接继承。
Michael_GLF
·
2020-08-13 14:21
————数据结构————
树链剖分
Trie
【CF768G】The Winds of Winter
可持久化线段树
DFS序
n≤100000题解首先用DFS序+
可持久化线段树
求出删掉这个点后剩下的联通块的大小的最大值max、次大值sec、最小值min。
ez_yww
·
2020-08-13 14:33
数据结构
数据结构--线段树
数据结构--可持久化数据结构
dfs序
【CSP-S 2019】【洛谷P5666】树的重心【
主席树
】【树状数组】【dfs】
题目:题目链接:https://www.luogu.com.cn/problem/P5666小简单正在学习离散数学,今天的内容是图论基础,在课上他做了如下两条笔记:一个大小为nnn的树由nnn个结点与n−1n−1n−1条无向边构成,且满足任意两个结点间有且仅有一条简单路径。在树中删去一个结点及与它关联的边,树将分裂为若干个子树;而在树中删去一条边(保留关联结点,下同),树将分裂为恰好两个子树。对于
SSL_ZYC
·
2020-08-13 12:54
DFS
主席树
树状数组
最近点 - 可持久化点分树 -
主席树
题目大意:给一棵树,点有黑白,每次形如翻转一个点颜色,询问到某个点的最近黑色点距离,以及返回之前某个版本。n,q#definerep(i,a,b)for(inti=a;ipii;typedefset::iteratorsit;namespaceINPUT_SPACE{constintBS=(1'9');x=ch^'0';while((ch=gc())>='0'&&chg[N];inlineinta
Mys_C_K
·
2020-08-13 12:06
主席树
点分治
HDU-6287:Just h-index(二分+
主席树
)
Justh-indexTimeLimit:6000/3000MS(Java/Others)MemoryLimit:132768/132768K(Java/Others)TotalSubmission(s):83AcceptedSubmission(s):48ProblemDescriptionTheh-indexofanauthoristhelargesthwherehehasatleasthpa
Mitsuha_
·
2020-08-13 12:24
数据结构-划分树//主席树
bzoj2733: [HNOI2012]永无乡(并查集+
主席树
)
题目传送门。解法:跟3545解法差不多。https://blog.csdn.net/hanks_o/article/details/79903342这道题还没了边权。直接连通。那么并查集。据说要启发式。小的向大的合并。然后就没了?代码实现:#include#include#include#include#include#include#includeusingnamespacestd;struct
Hanks_o
·
2020-08-13 11:05
BZOJ
主席树
并查集
bzoj3295: [Cqoi2011]动态逆序对
那就
主席树
啊,但是修改怎么办?要修改一连串
主席树
,这样就慢了,所以就想到树状数组套
主席树
。每棵
主席树
ta[x]是(x-lowbit(x),x]这段区间的权值
主席树
。然后修改、查询都变
*ACoder*
·
2020-08-13 11:41
#
主席树
树状数组
bzoj3295: [Cqoi2011]动态逆序对(题解2)
id=3295题解上回说到,我用BIT套HJT树(就是树状数组套
主席树
)好不容易卡着空间过了这道题。
*ACoder*
·
2020-08-13 11:41
分治
树状数组
Gty的妹子树,洛谷P2137,树上分块+
主席树
(坑)
然后对于每一个建好的块,建一棵
主席树
来维护信息。
Deep_Kevin
·
2020-08-13 11:21
Climb(树上
主席树
)
WHU校赛2019OnlineF.Climb[没有链接]题目JBTisgoingtoclimbthemountain,buthewassuddenlytrappedintoanunknownenchantment.Therearenmountains,connectedbyn−1paths.Thereisonlyoneroadbetweenanytwomountains.Eachmountainh
xuziling_
·
2020-08-13 11:51
ACM
bzoj 3123: [Sdoi2013]森林 启发式合并+
可持久化线段树
题意:给出一片森林,每个点有点权,要求资瓷两个操作:询问两点间路径的第k小点权;加一条边分析:如果没有合并操作的话就是裸的
可持久化线段树
啦。
SFN1036
·
2020-08-13 10:39
可持久化线段树
bzoj2733 永无乡 线段树合并
那么考虑用
可持久化线段树
来写。对每一个节点保存一棵线段树表示所在块的编号的集合(因此可以一个块值保存一棵树),然后合并的时候就地柜合并左子节点和右子节点,然后更新节点的值即可。
lych_cys
·
2020-08-13 10:04
bzoj
BZOJ3551 Peaks 加强版 【kruskal重构树】【
主席树
】
darkbzoj.tk/problem/3551题解:对原图求一遍kruskal重构树,考虑在重构树上倍增,求出深度最小的点权≤k\lek≤k的点(显然不是原图上的点),然后只需要求子树第k大,这显然可以
主席树
解决代码
DenyTian
·
2020-08-11 17:07
【解题报告】
====并查集&差分
====主席树
洛谷 P4755 Beautiful Pair ——
主席树
+笛卡尔树
Thisway题意:题解:这道题就比2020牛客三的题目简单很多了,我一眼就看出来他是
主席树
+笛卡尔树。但是我觉得这道题应该有时间复杂度更低的做法,等有时间了再琢磨琢磨。
天翼之城*
·
2020-08-11 13:14
主席树
笛卡尔树
【BZOJ】4504 K个串
主席树
+堆
然后对于每个ai,在(pre[ai],i)这个范围内都加上ai,可以用
主席树
。题目要求k个区间不相同,这就是“超级钢琴”的模型,套上超级钢琴的套路就行了。
Chester_King
·
2020-08-11 12:58
BZOJ
难题
主席树
堆
2019牛客暑期多校训练营(第九场)Cutting Bamboos (
主席树
+二分)
题意:链接:https://ac.nowcoder.com/acm/contest/889/H给你n棵树每一棵树的高度,每一棵树从左到右编号为1,2,...n。Q次询问,每次询问(l,r,x,y)代表在编号为[l,r]这个闭区间内的树,我需要砍y次把这些树砍成高度为0,但是每次砍只能规定一个高度,这个高度以上的需要全部砍去,下面的不动,且每次砍的高度之和需要相同,比如高度为[6,2,1]的三棵树我
ltrbless
·
2020-08-11 12:21
ACM
数据结构
2019牛客暑期多校训练营
[
可持久化线段树
] codeforces 707D. Persistent Bookcase
D.PersistentBookcase题意:一个n∗m矩阵A,维护4种操作:1ij:把第A[i][j]赋值为12ij:把第A[i][j]赋值为03i:把A[i]的0变1,1变04i:回到第i个操作之后的状态数据保证合法。每个操作完成后输出整个矩阵1的个数。思路:一维的话就可持久化就好啦,二维的话就可持久化套可持久化就好啦。对操作3稍加思考的话可以发现可以像其他操作一样O(1)的完成。每次都是对整
kg20006
·
2020-08-11 12:56
ACM
题解
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
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
其他