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
ACM____树链剖分
[BZOJ2157] 旅游 边权
树链剖分
对于边权,我们将其赋值到树边的子节点上就好查询,修改时,只需要在两点都在一条重链时,序号小的点+1即可(x,y,min,max写混WA了一发,气,另外需要改一改线段树的写法了,又臭又长)/**************************************************************Problem:2157User:cabinfeverLanguage:C++Resul
Cabinfever
·
2016-11-03 21:17
bzoj
数据结构——树链剖分
[BZOJ4034][HAOI2015]T2
树链剖分
+dfs序
常规题,比较特殊的操作是修改以x为根的子树的所有节点我们知道,这颗子树的dfs序一定是连续的,所以我们只需要对每个节点记录一下,最大的dfs序即可因为树剖要dfs,所以我们直接在第二次dfs时记录,但需要注意的是,因为我们最先对重链的节点编号,所以dfs时也必须先dfs重链我采取的办法是直接加边,因为边表保证了最后加的边最先扩展,或者也可以直接记录一下重边连的点(因为longlongWA了一次,树
Cabinfever
·
2016-11-02 22:00
bzoj
数据结构——树链剖分
bzoj 4515: [Sdoi2016]游戏(
树链剖分
+线段树)
4515:[Sdoi2016]游戏TimeLimit:40SecMemoryLimit:256MBSubmit:417Solved:185[Submit][Status][Discuss]DescriptionAlice和Bob在玩一个游戏。游戏在一棵有n个点的树上进行。最初,每个点上都只有一个数字,那个数字是123456789123456789。有时,Alice会选择一条从s到t的路径,在这条路
clover_hxy
·
2016-10-18 19:32
线段树
树链剖分
bzoj 4326: NOIP2015 运输计划 (二分答案+
树链剖分
+树状数组)
4326:NOIP2015运输计划TimeLimit:30SecMemoryLimit:128MBSubmit:783Solved:514[Submit][Status][Discuss]Description公元2044年,人类进入了宇宙纪元。L国有n个星球,还有n−1条双向航道,每条航道建立在两个星球之间,这n−1条航道连通了L国的所有星球。小P掌管一家物流公司,该公司有很多个运输计划,每个运
clover_hxy
·
2016-10-17 22:08
bzoj 1103: [POI2007]大都市meg(
树链剖分
)
1103:[POI2007]大都市megTimeLimit:10SecMemoryLimit:162MBSubmit:2111Solved:1104[Submit][Status][Discuss]Description在经济全球化浪潮的影响下,习惯于漫步在清晨的乡间小路的邮递员BlueMary也开始骑着摩托车传递邮件了。不过,她经常回忆起以前在乡间漫步的情景。昔日,乡下有依次编号为1..n的n个
clover_hxy
·
2016-10-13 19:02
树链剖分
[BZOJ1969][Ahoi2005]LANE 航线规划(
树链剖分
)
======这里放传送门======题解这题猛一看跟线段树啊
树链剖分
什么的一点儿关系也没有啊好吧?一开始还以为它是那种像某个叫做【堵塞的交通】的题目那样是个线段树维护连通性啊啥的鬼畜玩意儿叻。。。
FromATP
·
2016-10-04 11:49
BZOJ
不知道加什么形容词的树链剖分
bzoj 3999: [TJOI2015]旅游(
树链剖分
)
3999:[TJOI2015]旅游TimeLimit:10SecMemoryLimit:256MBSubmit:423Solved:214[Submit][Status][Discuss]Description为了提高智商,ZJY准备去往一个新世界去旅游。这个世界的城市布局像一棵树。每两座城市之间只有一条路径可以互达。每座城市都有一种宝石,有一定的价格。ZJY为了赚取最高利益,她会选择从A城市买入
clover_hxy
·
2016-10-01 22:42
线段树
树链剖分
[BZOJ4530][Bjoi2014]大融合(
树链剖分
+并查集)
题目描述传送门题解显然一条边的负载等于将这条边断开后形成的两个子树的节点数的乘积。在计算一条边的负载的时候,可以将所有与之连通的点看成一棵树。只需要计算出一个端点的size大小就可以用size*(n-size)计算出答案。由于这棵树的形态是已经确定的,可以先将这棵树建出来。每一次添加一条边肯定是在一对父子之间。那么将这条边连通无非是将父亲以及它能到的最远的祖先之间的点的size都加上儿子的size
Clove_unique
·
2016-09-25 08:12
题解
并查集
省选
树链剖分
[BZOJ4530][Bjoi2014]大融合(
树链剖分
+并查集)
题目描述传送门题解显然一条边的负载等于将这条边断开后形成的两个子树的节点数的乘积。在计算一条边的负载的时候,可以将所有与之连通的点看成一棵树。只需要计算出一个端点的size大小就可以用size*(n-size)计算出答案。由于这棵树的形态是已经确定的,可以先将这棵树建出来。每一次添加一条边肯定是在一对父子之间。那么将这条边连通无非是将父亲以及它能到的最远的祖先之间的点的size都加上儿子的size
Clove_unique
·
2016-09-25 08:12
题解
并查集
省选
树链剖分
bzoj 4530: [Bjoi2014]大融合 (并查集+
树链剖分
+线段树)
4530:[Bjoi2014]大融合TimeLimit:10SecMemoryLimit:256MBSubmit:140Solved:83[Submit][Status][Discuss]Description小强要在N个孤立的星球上建立起一套通信系统。这套通信系统就是连接N个点的一个树。这个树的边是一条一条添加上去的。在某个时刻,一条边的负载就是它所在的当前能够联通的树上路过它的简单路径的数量。
clover_hxy
·
2016-09-24 14:50
并查集
线段树
树链剖分
[BZOJ1969][Ahoi2005]LANE 航线规划(
树链剖分
+并查集)
值得注意的是
树链剖分
维护边权将边权下放成点权。这样的话当两个点到达一条重链的时候应
Clove_unique
·
2016-09-24 11:33
题解
并查集
树链剖分
[BZOJ1969][Ahoi2005]LANE 航线规划(
树链剖分
+并查集)
值得注意的是
树链剖分
维护边权将边权下放成点权。这样的话当两个点到达一条重链的时候应
Clove_unique
·
2016-09-24 11:33
题解
并查集
树链剖分
bzoj 1969: [Ahoi2005]LANE 航线规划(
树链剖分
+线段树+最小生成树)
1969:[Ahoi2005]LANE航线规划TimeLimit:10SecMemoryLimit:64MBSubmit:293Solved:139[Submit][Status][Discuss]Description对Samuel星球的探险已经取得了非常巨大的成就,于是科学家们将目光投向了Samuel星球所在的星系——一个巨大的由千百万星球构成的Samuel星系。星际空间站的SamuelII巨
clover_hxy
·
2016-09-24 08:48
图论
线段树
树链剖分
[BZOJ3589]动态树(
树链剖分
+dfs序+lca)
题目描述传送门题解修改的操作直接做就可以了。查询的时候问题主要出在会有重复的路径。我的思路就是将重复的路径砍断,变成不重复的,然后最后依次查询就可以了。由于k比较小,O(k2)判断就是可以接受的。由于树枝全部是从某个节点到根的路径的一段,处理起来就比较方便了。处理两条树枝的方法是:设两条树枝(x1,y1)(x2,y2),且h[x1]h[r]或者h[x2]>h[r],则说明两条树枝不相交,可以不作任
Clove_unique
·
2016-09-24 07:45
题解
lca
树链剖分
dfs序
[BZOJ3589]动态树(
树链剖分
+dfs序+lca)
题目描述传送门题解修改的操作直接做就可以了。查询的时候问题主要出在会有重复的路径。我的思路就是将重复的路径砍断,变成不重复的,然后最后依次查询就可以了。由于k比较小,O(k2)判断就是可以接受的。由于树枝全部是从某个节点到根的路径的一段,处理起来就比较方便了。处理两条树枝的方法是:设两条树枝(x1,y1)(x2,y2),且h[x1]h[r]或者h[x2]>h[r],则说明两条树枝不相交,可以不作任
Clove_unique
·
2016-09-24 07:45
题解
lca
树链剖分
dfs序
bzoj 3589: 动态树 (
树链剖分
+线段树)
3589:动态树TimeLimit:30SecMemoryLimit:1024MBSubmit:451Solved:155[Submit][Status][Discuss]Description别忘了这是一棵动态树,每时每刻都是动态的.小明要求你在这棵树上维护两种事件事件0:这棵树长出了一些果子,即某个子树中的每个节点都会长出K个果子.事件1:小明希望你求出几条树枝上的果子数.一条树枝其实就是一个
clover_hxy
·
2016-09-23 21:33
线段树
树链剖分
[BZOJ4390][Usaco2015 dec]Max Flow(树上差分+lca)
题目描述传送门题解某人用链剖水掉了,不过还有另外的思路时间完爆
树链剖分
。
Clove_unique
·
2016-08-25 17:11
题解
lca
差分
[BZOJ4390][Usaco2015 dec]Max Flow(树上差分+lca)
题目描述传送门题解某人用链剖水掉了,不过还有另外的思路时间完爆
树链剖分
。
Clove_unique
·
2016-08-25 17:11
题解
lca
差分
动态树-LCT-bzoj2002弹飞绵羊
其实动态树主题思想跟
树链剖分
差不多,非常频繁的使用了Splay。类似
树链剖分
的定义:PreferredChild:如果结
Frods
·
2016-08-18 19:57
动态树
【BZOJ 1036】树的统计Count(
树链剖分
)
【BZOJ1036】树的统计Count(
树链剖分
)1036:[ZJOI2008]树的统计CountTimeLimit:10SecMemoryLimit:162MBSubmit:12991Solved:5233Description
A_LeiQ
·
2016-08-13 11:57
ACM道路之数据结构
BZOJ 4196 软件包管理器(
树链剖分
子树)
树链剖分
同时记录子树区间对于install操作,直接爬上根结点,进行更新查询操作对于unstall操作,直接询问子树区间,更新子树区间#include#include#include#include#include
wJs9528-1
·
2016-08-03 20:25
===数据结构===
树链剖分
BZOJ 3531 (
树链剖分
,线段树动态开点)
首先读完题,仔细观察一下,如果按照常规写法,那么对于每一个宗教来说都应该储存当前宗教下所有城市的评价,即建立C棵线段树去维护宗教下的所有城市,但是这里如果直接开数组维护很明显会爆内存,观察到由于每个宗教来说并不是所有城市都为有效值,而只是部分城市,考虑到这一点,可以选择动态的在线段树上开结点去维护城市评价。对于动态开结点的操作,我是这么处理的,首先开一个大数组表示结点,前100000个表示宗教的头
wJs9528-1
·
2016-08-02 21:31
===数据结构===
树链剖分
BZOJ 4034 T2 (
树链剖分
解决子树问题)
树链剖分
有这样一个性质,即在剖完之后每个结点下面子树的编号一定是连续的,那么基于这一点,我们记录每个结点的区间就能解决子树更新问题dfs序也可以解决子树问题,但是这里需要计算一个贡献值,结点的层数不好处理
wJs9528-1
·
2016-08-01 08:44
===数据结构===
树链剖分
【个人整理】省选知识点汇总
*zkw费用流),二分图点分治,边分治,*动态点分治
树链剖分
,动态树,树分块虚树,*prufer编码*仙人掌算法数据结构带权并查集Splay(作为平衡树和维护区间),Treap,替罪羊树
DQSSS
·
2016-07-31 01:01
===其它===
个人
HDU 3966
树链剖分
点击打开链接题意:给一个树,三个操作,一个询问点的权值,一个将u到v路径上的点的权值增加,一个是减少思路:还是比较裸的模版题,线段树改为区间更新就好了#pragmacomment(linker,"/STACK:1024000000,1024000000") #include #include #include #include #include #include usingnamespacestd
Dan__ge
·
2016-07-10 16:00
数据结构
ACM
HDU
树链剖分
SPOJ 375
树链剖分
点击打开链接题意:给个树和树上的权值,两个操作,Quv,问u到v的边上的最大权值,Cuv,将第u条边的权值改为v思路:今天学了学
树链剖分
,这题是个检验模版的题目,理论我是解释不清楚的,自己在九野聚聚那学来的一份模版
Dan__ge
·
2016-07-08 20:00
数据结构
ACM
树链剖分
SPOJ 375
树链剖分
点击打开链接题意:给个树和树上的权值,两个操作,Quv,问u到v的边上的最大权值,Cuv,将第u条边的权值改为v思路:今天学了学
树链剖分
,这题是个检验模版的题目,理论我是解释不清楚的,自己在九野聚聚那学来的一份模版
Dan__ge
·
2016-07-08 20:00
数据结构
ACM
树链剖分
Link Cut Tree学习小记
与
树链剖分
的区别
树链剖分
只能维护静态树,就是只能对树上的点的值进行修改的算法,一般还是用线段树来维护的。所以LCT就厉害了,首先是维护方式不同,其次它是用splay来维护的。
Facico
·
2016-07-03 21:44
树
小记
splay
LCT
动态树
算法小记
Link Cut Tree学习小记
与
树链剖分
的区别
树链剖分
只能维护静态树,就是只能对树上的点的值进行修改的算法,一般还是用线段树来维护的。所以LCT就厉害了,首先是维护方式不同,其次它是用splay来维护的。
doyouseeman
·
2016-07-03 21:00
动态树
小记
LinkCutTre
LCT的操作
LCT学习
【SDOI2011】染色
Solution第一眼的水题这种树上的修改与询问,不是一眼的
树链剖分
吗!为了练习动态树,强制性打成了lct。维护方式
Facico
·
2016-07-02 19:27
树链剖分
省选
LCT
动态树
【SDOI2011】染色
Solution第一眼的水题这种树上的修改与询问,不是一眼的
树链剖分
吗!为了练习动态树,强制性打成了lct。维护方式
doyouseeman
·
2016-07-02 19:00
动态树
树链剖分
染色
LCT
SDOI
用动态树强弄树的统计
tII.QMAXuv:询问从点u到点v的路径上的节点的最大权值III.QSUMuv:询问从点u到点v的路径上的节点的权值和注意:从点u到点v的路径上的节点包括u和v本身Solution树的统计都是大家学习
树链剖分
时候的基础模板题
doyouseeman
·
2016-06-30 22:00
动态树
splay
LCT
树的统计
LinkCutTre
【JZOJ 4388】染色
DescriptionSolution咋一眼看过去,那么像动态点分治…大概想一下代码量,嗯…,不少…那么来想一下
树链剖分
怎么打,设一根节点的距离是c,与根的路径为s,点x,y之间的距离也就是cx+cy−
HOWARLI
·
2016-06-16 20:00
树链剖分
动态树分治
动态点分治
数据结构[刷水]
1.POJThemerchant给定一棵树,每个点有一个点权每次询问(u,v),求从u到v的路径上,a点权值-b点权值最大要求a点比b点更靠近(或者等于)v1≤N,wi,Q≤50000时限3秒题解:
树链剖分
zxn0803
·
2016-05-25 14:00
HDU 3804 Query on a tree
树链剖分
+ 线段树离线操作 好题
pid=3804题意:给定一棵树,有边权,首先输入一个n,然后n-1行abc,代表点a点b之间的边权为c,接着输入一个m,然后m行xc,查询点1到点x之间的路径上不大于c的边权最大是多少思路:首先
树链剖分
啊
霜刃未曾试
·
2016-05-23 22:56
树链剖分
树链剖分
什么是
树链剖分
将一颗树划分成几条不相交的链,让每一节点都存在且仅存在于一条链中,这样我们就得到了数个线性的结构,然后可以用线段树等数据结构去维护这个整体。其实就是一个将数据结构推广至树上的方法。
jokerwyt
·
2016-05-20 19:00
BZOJ1036——树的统计count
1、题目大意:给你一棵树,有三种操作1>qmax,询问u到v中间点权的最大值2>qsum,询问u到v中间点权和3>change,把u这个节点的权值改为v2、分析:
树链剖分
的裸题,搞了一个礼拜。。。
qzh_1430586275
·
2016-05-18 09:00
线段树
树链剖分
1036
bzoj
树的统计Count
BZOJ1146——[CTSC2008]网络管理Network
2、分析:这个就是
树链剖分
+树套树#include #include #include #include usingnamespacestd; #defineM1000000 intHeight[M],
qzh_1430586275
·
2016-05-18 08:00
树链剖分
1146
bzoj
树套树
BZOJ4034——[HAOI2015]T2
1、题目大意:用一个数据结构支持树的点修改和子树修改、树上路径和2、分析:
树链剖分
裸题#include #include #include #include usingnamespacestd; #defineM1000000
qzh_1430586275
·
2016-05-18 08:00
树链剖分
t2
bzoj
4034
HAOI2015
LightOJ 1348 (
树链剖分
+ 线段树(树状数组))
题目Link分析典型的
树链剖分
题,
树链剖分
学习资料Code#includeusingnamespacestd;constintmaxn=30000+131;structEdge{intNext;intTo
Aoxuets
·
2016-05-17 20:00
【GDOI 2016 Day1】第四题 疯狂动物城
Description抽象题意:求可持久化
树链剖分
solution一道巨型码农题!
HOWARLI
·
2016-05-17 19:00
树链剖分
GDOI
GDOI2016
码农题
【GDOI 2016 Day1】第四题 疯狂动物城
Description抽象题意:求可持久化
树链剖分
solution一道巨型码农题!
HOWARLI
·
2016-05-17 19:00
树链剖分
GDOI
码农题
GDOI2016
LCA 练习题2 : hdu 3078 + poj2763 我要记一辈子的s b错误
有人说是很标准的
树链剖分
,但这题用lca也能做一做。时间复杂度有点糟TUT其实询问就是普通的lca查询。但是更新会有点麻烦。其实并不复杂
qq_24664053
·
2016-05-16 15:00
BZOJ 2243 [SDOI2011]染色
树链剖分
+LCA+区间合并线段树
题意:给定一棵有n个节点的无根树和m个操作,操作有2类:1、将节点a到节点b路径上所有点都染成颜色c;2、询问节点a到节点b路径上的颜色段数量(连续相同颜色被认为是同一段),如“112221”由3段组成:“11”、“222”和“1”。请你写一个程序依次完成这m个操作。思路:这道题敲了很久…..(好恶心….但是AC了真的很exciting就是要考虑到区间合并,两条链进行合并的时候要判断ft[x][i
qq_27925701
·
2016-05-15 21:00
树链剖分+LCA
HYSBZ 2243 染色
树链剖分
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=2243题意:Description给定一棵有n个节点的无根树和m个操作,操作有2类:1、将节点a到节点b路径上所有点都染成颜色c;2、询问节点a到节点b路径上的颜色段数量(连续相同颜色被认为是同一段),如“112221”由3段组成:“11”、“222”和“1”。请你写一个程序依次完成这m个操作。
霜刃未曾试
·
2016-05-15 17:41
树链剖分
SPOJ 357 QTREE【
树链剖分
+ 线段树】
(熟练剖分可以看做链分治)今天刚好看了卿学姐的
树链剖分
视频,照着模板写了道入门题。
Yukizzz
·
2016-05-13 23:00
bzoj2125 最短路
树链剖分
好吧实际上和树剖没什么关系。。只是用来求lca的。。。 对于点x,如果不在环中,定义它的父亲为dfs树;否则定义它的父亲为它所在环在dfs树中最高的点,同时距离为它到那个最高点的最短路。然后可以用树剖求出(x,y)的lca。然后分类讨论一下,因为如果x->lca和y->lca的路径上最后一部分在一个环中,那么可能可以有另一种走法。AC代码如下:#include #include #
lych_cys
·
2016-05-12 21:00
DFS
LCA
树链剖分
仙人掌
[BZOJ3626][LNOI2014]LCA(离线+差分+
树链剖分
)
题目描述传送门题解首先把询问lr拆成两个询问。利用差分的思想,每次查询区间[1,i]与zlca的和,然后用r的值减去l-1的值就是答案。查询区间[1,i]与zlca的和,可以将1-i所有的点到根的路径上的点都+1,然后查询z到根的路径上所有点的权值和即为答案。其实这就是深度的表示。那么离线询问之后排序,时间复杂度为O(nlogn)代码#include#include#include#include
Clove_unique
·
2016-05-12 17:56
题解
省选
树链剖分
差分
[BZOJ3626][LNOI2014]LCA(离线+差分+
树链剖分
)
题目描述传送门题解首先把询问lr拆成两个询问。利用差分的思想,每次查询区间[1,i]与zlca的和,然后用r的值减去l-1的值就是答案。查询区间[1,i]与zlca的和,可以将1-i所有的点到根的路径上的点都+1,然后查询z到根的路径上所有点的权值和即为答案。其实这就是深度的表示。那么离线询问之后排序,时间复杂度为O(nlogn)代码#include#include#include#include
Clove_unique
·
2016-05-12 17:56
题解
省选
树链剖分
差分
[BZOJ3626][LNOI2014]LCA(离线+差分+
树链剖分
)
题目描述传送门题解首先把询问lr拆成两个询问。利用差分的思想,每次查询区间[1,i]与zlca的和,然后用r的值减去l-1的值就是答案。查询区间[1,i]与zlca的和,可以将1-i所有的点到根的路径上的点都+1,然后查询z到根的路径上所有点的权值和即为答案。其实这就是深度的表示。那么离线询问之后排序,时间复杂度为O(nlogn)代码#include #include #include #incl
Clove_unique
·
2016-05-12 17:00
离线
树链剖分
差分
bzoj
LNOI
上一页
12
13
14
15
16
17
18
19
下一页
按字母分类:
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
其他