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
树剖
LCA(最近公共祖先)
lca即两点到达的第一个公共节点前两个方法取自:Cold_Chair,
树剖
方法取自:Frocean目录暴力往上跳倍增算法
树剖
法暴力往上跳先把x,y跳到同一深度,然后同时往上跳,最后fa[x]==fa[y
Wtothey
·
2020-08-11 00:22
数据结构
牛客练习赛62 E水灾(
树剖
求lca,kruscal重构树)
题目链接:https://ac.nowcoder.com/acm/contest/5205/E思路:这题真的是,卡常卡的我怀疑人生,但也因此也优化了一下lca的板子,这波血赚询问要求的是询问点两两之间不可达的最小水位,相当于选取一个数x,把比x小的边全删了,那么很容易想把这张图转化为一颗最大生成树,如果在最大生成树上不可达了,那么在原图上显然不可达。在树上的话,如果可以离线,那么点分乱搞可能也行?
llmxby
·
2020-08-10 20:56
2020牛客暑期多校训练营(第七场)A National Pandemic (
树剖
)
题意给定一棵树,要求对树上节点做以下操作:给定固定的x值和w值,使树上所有的点y的权值增加w-dis[x,y]给定固定的x值,使x的权值变为min(0,x的权值)输出单点的权值分析对于w-dis[x,y],我们可以简单处理一下,将其转换为w-dep[x]-dep[y]+2*dep[lca(x,y)],其中w-dep[x]的值是固定的,因此我们可以每次处理时都将其累加存储,S=w-dep[x]。我们
kaka0010
·
2020-08-10 17:24
树剖
算法
原题大战总结(NOIP2018 @ I7-8700K)
JB贪心感觉自己很靠运气区分度应该在明天肯定会比以往难就算不会也要试着挣扎部分分可以想题到9:30不要死陷一个思路,放全局看争取200+真的总结DAY2果然难度爆炸,平均主义好有个很大的失误就是T3想到
树剖
解法之后没有去找更简单的解法
jokerwyt
·
2020-08-10 17:30
总结
洛谷3241 [HNOI2015]开店(标记永久化+主席树+
树剖
)
这个题可以说是LNOI2014LCA这个题的加强版所以那个题的博客就咕咕咕啦hhhqwq直接介绍做法了考虑一个如何求两个点x,yx,yx,y的lcalcalca到根的路径和,我们发现,如果我们在确定一个根后,将每一条边的边权赋值给他的tototo,那么实际上就是对于xxx,把它所有到根的路径上所有点都标记+1+1+1,然后在yyy点统计yyy到根的路径上所有点的标记数×权值标记数\times权值标
y_immortal
·
2020-08-09 03:32
主席树
树链剖分
标记永久化
c++
【bzoj4530】[Bjoi2014]大融合 并查集+线段树合并
线段树合并好神啊,表示我这种傻逼只能想到
树剖
O(nlog^2n)做法先把原树建出来,每次查询就等价于计算子节点的size*(父亲节点所在联通块的大小-子节点的size)用并查集找到节点的祖先,维护子树size
qingdaobaibai
·
2020-08-08 22:16
数据结构
论在LCT上下放标记
其实看起来最快的方法是先用O(n)的时间建成一棵平衡树,然后用类似树链剖分中轻重链剖分的办法,把这棵
树剖
成实链和虚
t14t41t
·
2020-08-08 21:32
动态树LCT
OI党坚毅的步伐
bzoj4530[Bjoi2014]大融合 线段树合并+dfs序+并查集
首先很容易知道先把原树建出来以后,答案就是(size(fa)-size(x))*size(x)那么问题是怎么样处理询问呢,当然你可以
树剖
暴力搞,因为我一开始也是这么想的,这里提供一种更优美的解法==我们把树建出来以后
Transcendence_magia
·
2020-08-08 19:21
bzoj
线段树合并
并查集
dfs序
LCT动态树【史上最精简易懂的LCT讲解】
LinkCutTree(动态树,LCT)介绍首先简单介绍一下LinkCutTree,将一棵树分成轻边和重链,类似于树链剖分,但是
树剖
是静态的。LCT可以用于动态的加点和删点,甚至还可以换根。
aiweiluan5095
·
2020-08-08 14:14
SPOJ2939 QTREE5(LCT维护子树信息)
或者是
树剖
(总之不是LCT)但是我这里还是把它当成一个LCT题目来做首先,这个题的重点还是在update上因为有makerootmakerootmakeroot这个操作的存在,所以自然避免不了reversereversereverse
y_immortal
·
2020-08-08 12:45
LCT
大融合BJOI2014 洛谷4219 LCT (LCT维护子树信息学习笔记)
我们知道,
树剖
的比较容易维护子树信息的,但是我之前一直以为LCT是不可以维护子树信息的,因为根据LCT的性质,它会把子树变为实子树(实边连接的)和虚子树(虚边连接的),所以我以为只能维护链上信息,觉得子
forever_shi
·
2020-08-08 10:56
LCT
数据结构
学习笔记
BZOJ 3631 松鼠的新家 树上差分
我猜会有智障说直接链剖+线段树…(希望没有)FromRYC's课件然鹅我并不反对
树剖
。。。我是智障。。。
diaohan2969
·
2020-08-07 13:40
CF487E Tourists
思路:若这个问题在树上就是一道大水题了,直接
树剖
维护即可。但是这个问题在图上,将图变成树的一种操作是圆方树,不妨考虑圆方树来解决。
zsyz_ZZY
·
2020-08-04 22:47
#
圆方树
#
树链剖分
#
强联通
圆方树
树链剖分
tarjan
Count on a tree 树上 (u,v)的路上的第K小的权值(主席树+
树剖
lca
题目链接题目大意:就是求在树上(u,v)的路上的第K小的权值解题思路:首先对于求第K小的问题我们可以用主席树搞,没有问题,但是对于一个树形结构,我们需要将其转化为线性,然后需要
树剖
才能做.然后考虑链上的第
twh233
·
2020-08-04 16:00
树链剖分
主席树
NOIP总结
(
树剖
,主席树,平衡树,树套树,kd-tree,动态树)图论:MST,最短路,Tarjan(强联通分量,割点割边),并查集,拓扑排序,2-sat,差分约束,二分图(判定是否是二分图,二分图最大
pretend_fal
·
2020-08-04 16:51
NOIP范围浅谈
[论
树剖
与DFS序的正确姿势]
[BZOJ2243]染色裸
树剖
因为没有赋size[u]=1写T了T^T这个东西有区间可并性QAQ#include#include#include#include#definemaxn100010usingnamespacestd
__Horizon__
·
2020-08-04 12:46
数据结构--线段树
树--树分治。树链剖分
BZOJ
[练习]: 树链剖分练习题
这些是一些
树剖
的基础题难度从低到高初学者一定要做一做。。1.洛谷p3384树链剖分模板//一定记得任何算值的地方取模。。还有注意add和query时候深度小的在前面!
Lndulge.
·
2020-08-03 08:33
树链剖分
洛谷
bzoj
codevs
树
算法
[日常摸鱼]bzoj3083遥远的国度-树链剖分
一无聊就找
树剖
写题意:一颗带点权的树,三种操作:1.换根2.链赋值3.查询子树最小值如果没有换根的话直接就是裸的
树剖
了,对于换根的操作我们可以分类讨论。
aocai2015
·
2020-08-02 17:39
[
树剖
]
树剖
:从入门到进阶
题单文章目录写在前面T1[GrassPlantingG](https://www.luogu.com.cn/problem/P3038)T2[MaxFlowP](https://www.luogu.com.cn/problem/P3128)T3[求和](https://www.luogu.com.cn/problem/P4427)T4[CowLandG](https://www.luogu.com
锑元素使者
·
2020-08-02 15:59
#
树剖
树剖
学习笔记(二)—— 原理 + 复杂度证明
接上文
树剖
学习笔记(一)tid[x]里存的是访问到x这个节点的时间,之后我们根据这个tid[]值建树,所以这个tid[x]就是x在线段树中的编号。
Kumii
·
2020-08-02 14:45
学习笔记
noip知识点
动态规划线性dp区间dp树形dp线段树优化前缀和优化单调队列优化滚动数组优化内存(状压dp,数位dp,斜率优化,矩阵乘法加速)数据结构堆栈队列双向链表(约瑟夫环)树状数组线段树(
树剖
,主席树,平衡树,树套树
Dedsecr
·
2020-08-02 12:09
HDU3966 Aragorn's Story(树链剖分)
pid=3966昨天学了
树剖
以后感觉这个算法非常厉害,于是百度了几个
树剖
(入门)题来做,这题也是一个
树剖
入门题啦!题意:输入n个点,m条边(m一定等于n-1,也不知道为什么还要输入),q个询问。
xtttgo
·
2020-08-01 07:19
树链剖分
HDU3966 Aragorn's Story【树链剖分】
题意:给定一棵树,有3种操作,增加或减少两个点路径上所有点的值,查询某个点的值思路:把
树剖
分成链,剩下的就是一个有laze标记的线段树,点权和边权不同的地方就在qurey函数中while()下面的几行#
wjw1340
·
2020-08-01 06:01
树链剖分
hdu 4897 Little Devil I
树剖
(题如其名..)
详参考http://blog.csdn.net/u013368721/article/details/39338679先是
树剖
无疑,然后用线段树维护的时候设置三个遍历:sum记录1的个数,flip记录该点翻转的情况
zxxxxzzz
·
2020-08-01 02:47
树剖
HDU
HDU 5029 Relief grain
题意:一棵树m次染色每次染色一条路径颜色不会覆盖会积累问每个点覆盖次数最多的颜色是什么思路:树上路径操作不是树链剖分就是LCT对于每次染色相当于让那种颜色的权值+1一般的熟练剖分都是将
树剖
成线段然后放在线段树上这题只是剖成线段然后对于路径的染色就变成了对多个线段的染色由于剖分已经使树变成了线性的结构因此我们可以利用
HouseFangFZC
·
2020-08-01 02:04
HDU
数据结构
【HDU3966】Aragorn's Story(树链剖分+线段树)
转自ACdreamers并稍加改动树链剖分用一句话概括就是:把一棵
树剖
分为若干条链,然后利用数据结构(树状数组,SBT,Splay,线段树等等)去维护每一条链,复杂度为O(logn)那么,树链剖分的第一步当然是对树进行轻重边的划分
oranges_c
·
2020-07-31 20:57
树
数据结构
树之线段树
【HDU2460】Network
将边的信息转移到点,可以
树剖
实现。每次修改后查询即可。代码#include#include#include#includeusingnamespacestd;structedge{intu,
ezoixx174
·
2020-07-31 17:44
树链剖分
hdu_4897_Little Devil I(树链剖分)
题意:有三种操作,1是在树上的两个节点之间的路径改变当前的颜色,2是改变树上有且只有一个端点在u,v之间的边的颜色,3是询问u,v之间黑色边的条数题解:对于1,就是一般的树链剖分操作,对于2,我们知道
树剖
把树分成了重链和轻链
bin_gege
·
2020-07-31 16:27
hdu
数据结构
线段树
HDU5029 Relief grain(树链剖分+线段树)
pid=5029每天一题,龟速练习着
树剖
,感觉效率非常低。。。这题相比于HDU3966那种模板题来说,已经是很有思维难度的题目了(像我这种ZhiZhang选手看了别人的博客才看懂)。
xtttgo
·
2020-07-31 13:54
树链剖分
Link Cut Tree(动态树)(坑)
重链剖分重链剖分其实就是我们所说的
树剖
。定义每个点的size域为它的儿子的个数,则定义某个点的重儿子为它的所有儿子中,size域最大的那个儿子。则连接它的它重儿
linjiayang2016
·
2020-07-28 02:07
LCT
题解 CF487E 【Tourists】
用广义圆方树来维护一般无向图,每个方点的权值为其相邻的圆点的权值的最小值,然后可以用
树剖
来修改和查询。但是这样修改的复杂度是不正确的,若一个圆点相邻有许多方点,像菊花图一样,那么复杂度是无法接受的。
lhm_liu
·
2020-07-25 11:00
[USACO15DEC]最大流Max Flow
时间复杂度:
树剖
、倍增LCA$O(m\log_2n)$,TarjanLCA$O(n
ddpx3313
·
2020-07-15 22:48
c/c++
树链剖分学习笔记 By cellur925
先%一发机房各路祖传
树剖
大师%%%。近来总有人向我安利
树剖
求LCA,然鹅我还是最爱树上倍增。
weixin_30617737
·
2020-07-15 03:34
浅谈树链剖分 F&Q
树链剖分,就是把一棵
树剖
分成若干连续的链,将这些链里的数据映射在线性数组上维护。比方说我们想要维护树上任意两点间的lca,或者支持一段路径或一棵子树的修改和查询,都可以用树链剖分来解决。
weixin_30388677
·
2020-07-15 03:40
bzoj 4515. [Sdoi2016]游戏(树链剖分 + 李超线段树(真·模板) + 李超树维护区间最小值)
洛谷链接
树剖
一下,直观上来看,是要在树上对一条链维护一段等差数列。
猝死在学ACM的路上
·
2020-07-14 20:06
2019 年百度之星·程序设计大赛 - 初赛四 05
dep[lca]dep[u]+dep[v]−2∗dep[lca],这里我们采用重链剖分的方式求lca,对于每次修改,都会改变树的结构,我们可以用一颗线段树维护子树的top(重链剖分的链头),这个很简单,懂
树剖
都会写求
一只叫橘子的猫
·
2020-07-14 08:11
数据结构----线段树
[学习笔记] Mys_C_K的独立集好题 - 动态dp -
树剖
- 全局平衡二叉树 - 学习笔记
还是类似于两个log的做法,先链分治(
树剖
),然后现在我们不用线段树维护每一条重链。我们对一条重链的每个点求其轻子树的size之和再+1,然后每次选择当前链的重心
Mys_C_K
·
2020-07-14 05:19
学习笔记
动态dp
树链剖分和dfs序
[树链剖分] HDU 5893 List wants to travel
思路:先建立
树剖
然后用线段树维护,记录一个区间内的颜色段数,最左颜色和最右颜色,然后就可以区间合并了,需要注意合并的顺序,没想清楚很容易就wa了,我想的是总是按查询的时间顺序把区间挨个接起来,最后合
kg20006
·
2020-07-13 06:16
ACM
题解
P2590 树的统计
一道
树剖
的模板题首先,由于本人比较懒,就把单点修改写成了区间修改,其实也没有有多大区别(关键是我不会写单点修改QAQ)不得不说,
树剖
的码量比较大,调了一上午才勉强调完。
genshy
·
2020-07-12 08:00
树上问题
所以好多地方直接粘过来了qwq目录树链剖分重链剖分
树剖
求LCA升华树上差分各种树上问题树链剖分所谓树链剖分,就是将树上的边进行划分。树链剖分有重链剖分,长链剖分,实链剖分等等。
Vanyun
·
2020-07-12 08:00
洛谷 P2590 [ZJOI2008]树的统计(线段树,树链剖分)
然后就是
树剖
的常规操作了。
尹昱钦
·
2020-07-12 00:00
【洛谷】3384 【模板】树链剖分
将一棵
树剖
成了若干条链之后,就可以套用其他的数据结构来维护链上的许多信息,又是降低复杂度。所以,如此分析,树链剖分是一种非常优秀的数据结构。但是,说实话,代码的复杂度也是挺高的……
Chester_King
·
2020-07-11 12:41
洛谷
树链剖分
难题
LCT 入门
首先类似于
树剖
的思想,我们将原
树剖
分成链在
Achtoria
·
2020-07-09 07:00
专题·树链剖分【including 洛谷·【模板】树链剖分
初见安~~~终于学会了
树剖
~~~【兴奋】当初机房的大佬在学
树剖
的时候我反复强调过:“学
树剖
没有前途的!!!”恩。真香。
樱狸❀
·
2020-07-08 02:24
树型结构
树链剖分
树剖
的魅力
文章目录P3384
树剖
模板P3376
树剖
求LCAP1967货车运输P3128MaxFlowP2146软件包管理器当然是TLE_题记P3384
树剖
模板#include#include#include#includetypedefunsignedlonglongull
快速转型理科生
·
2020-07-08 01:27
算法
数据结构
树论
bzoj2791(基环树+倍增lca)
最tm蛋疼的就是这题竟然卡
树剖
??让汪聚聚写了一下倍增快得飞起。。orz汪聚聚/***┏┓┏┓*┏┛┗━━━━━━━┛┗━━━┓*┃┃*┃━┃*┃><┃*┃┃*┃
qkoqhh
·
2020-07-05 02:11
其他算法
st表/RMQ
luogu P3950 部落冲突
题面传送门
树剖
裸题,感觉难度虚高。当两个部落开战时,我们就把下面那个点的权值设为111,休战则设为000即可。这样有一个好处就是查询时如果有111可以直接跳出。其他基本操作。
fxt275307894a
·
2020-07-04 16:12
洛谷
dfs
树状数组
树链剖分
【Learning】倍增求LCA题目汇总
T1hdu3710倍增+
树剖
#include#include#include#includeusingnamespacestd;constintN=20005,M=100005,inf=2139062143
ez_2016gdgzoi471
·
2020-07-04 15:40
倍增
Learning
dsu on tree:关于一类无修改询问子树可合并问题
\(dsu\)是并查集,\(dsu\on\tree\)是树上启发式合并,基于
树剖
(轻重链剖分)。无修改好理解,询问子树也好理解,啥是可合并啊?
dianan0938
·
2020-07-04 14:05
树链剖分习题 1(基础)
树链剖分习题基础知识P3384【模板】轻重链剖分(
树剖
入门题)P2590[ZJOI2008]树的统计(
树剖
入门题)P2146[NOI2015]软件包管理器(
树剖
入门题)P2486[SDOI2011]染色
cheng__yu_
·
2020-07-04 13:35
图论
树链剖分
上一页
1
2
3
4
5
6
7
下一页
按字母分类:
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
其他