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
dfs序&树链剖分
[luogu5180]支配树
对于有向图$G$和起点$s$,有以下定义和性质——为了方便,不妨假设$s$能到达$G$中所有点,并任意建立一棵以$s$为根的dfs树,以下节点比较默认均按照两点在这棵dfs树上的
dfs序
支配点:$x$是
PYWBKTDA
·
2021-11-22 15:00
[luogu5180]支配树
对于有向图$G$和起点$s$,有以下定义和性质——为了方便,不妨假设$s$能到达$G$中所有点,并任意建立一棵以$s$为根的dfs树,以下节点比较默认均按照两点在这棵dfs树上的
dfs序
支配点:$x$是
PYWBKTDA
·
2021-11-22 15:00
BZOJ-1103: [POI2007]大都市meg 题解
id=1103先将该树处理成
DFS序
列,然后用树状数组维护,在首次进入的点出+1,最后退出的点处-1,然后查询时该点的前缀和-1即为答案。每次该边时就将对应的点进入和退出两个位置改成0就好了。
AmadeusChan
·
2021-06-26 01:15
树链剖分
查询树上两点之间的路径上/子树中节点权值的和/极值/其它(在序列上可以用数据结构维护,便于合并的信息)原理一颗子树/链内的
dfs序
是连续的。所以可以用数据结构维护。
云中翻月
·
2021-06-10 15:50
Tree(
树链剖分
)
Tree#include#include#include#include#include#definePI3.14159265358979323846#defineintlonglong#defineqcstd::ios::sync_with_stdio(false)usingnamespacestd;constintmaxl=300100;constintminl=-217483648;cons
miaozasnone
·
2021-06-09 11:58
LUOGU 3384
树链剖分
LUOGU3384Description如题,已知一棵包含N个结点的树(连通且无环),每个节点上包含一个数值,需要支持以下操作:操作1格式1xyz表示将树从x到y结点最短路径上所有节点的值都加上z操作2格式2xy表示求树从x到y结点最短路径上所有节点的值之和操作3格式3xz表示将以x为根节点的子树内所有节点值都加上z操作4格式4x表示求以x为根节点的子树内所有节点值之和InputFormat第一行
苏子旃
·
2021-06-06 08:32
【2021四川省赛】E.Don‘t Really Like How The Story Ends 图论
2021四川省赛EDon’tReallyLikeHowTheStoryEnds题目大意给图加边,使得一个可能的
DFS序
列刚好是从1到nTime:1000msMemory:262144kB解题思路及分析第一次打正式比赛
CapriceH
·
2021-06-03 10:20
题解
Bzoj-3252: 攻略(贪心+
DFS序
+线段树)
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=3252(其实我也在看只有神知道的世界,所以就来写这道题了。。。)这道题解法题目里面都说了一半了QaQ...首先,很容易可以确定每次贪心取最大的一条路径,然后修改权值的正确性,(反证法:假如该贪心不正确,则存在两条路径p1,p2,权值和s(p1)>s(p2),先取p2比先取p1更优,那么,
AmadeusChan
·
2021-05-18 06:10
GDKOI2021普及游记
Day0这次GDKOI本来是在深圳举行的,我本来也没报名,结果因为疫情原因只能变为线上赛,前一天晚上一直在复习知识点,什么线段树,树状数组,
树链剖分
都过了一遍(太垃圾了,大佬勿喷)。
zwj_dreamforest
·
2021-01-31 16:21
总结
P1505 [国家集训队]旅游 (
树链剖分
)
传送门很明显是
树链剖分
,因为是边权,所以将每个边权给深度大的那个点可以了,根节点不用赋值,要求最大值和最小值,所以线段树不包含根节点。因为点是从0编号的,所以父节点和重儿子数组要初始化。
Tuilot
·
2020-10-09 23:54
hdu5458 LCA+并查集+
dfs序
+树状数组
神题,看着别人代码学习#include#include#include#include#include#include#include#include#include#include#include#includeusingnamespacestd;typedeflonglongLL;typedefunsignedlonglongULL;#definerep(i,k,n)for(inti=(k);
窝嘞割草
·
2020-09-17 13:33
HDU 3966
树链剖分
模板
#include#include#include#include#includeusingnamespacestd;#defineN50010#defineM100010intn,m,p;classNode{public:intfa,top,pos,val,siz,heavySon,dep;};Nodenode[N];classEdge{public:intu,v,next;};Edgeedge[
tanmlh
·
2020-09-17 13:27
树连剖分
POJ 2763
树链剖分
点击打开链接题意:给一个树,然后树上的边的边权,然后两个操作,一个是询问u到v的路上权值和,一个是将第几条边的权值修改思路:与SPOJ375的那道题目很像,都是边上的权值,然后维护一个线段树进行修改和求和就行了#include#include#include#include#include#includeusingnamespacestd;typedeflonglongll;typedefunsi
Dan__ge
·
2020-09-17 10:28
数据结构
树链剖分
线段树
0x21.搜索 - 树与图的遍历、拓扑排序
目录一、树与图的深度优先遍历及树的一些性质1.树与图的深度优先遍历2.时间戳3.树的
DFS序
(
树链剖分
前驱知识)4.树的深度5.树的重心与sizesizesize6.图的连通块划分二、树与图的广度优先搜索三
繁凡さん
·
2020-09-17 03:38
【算法竞赛学习笔记】
#
图论基础
#
拓扑排序
bzoj 2243 染色
树链剖分
好题!
思路:很好的一道
树链剖分
。树剖后,线段树要记录左端点l,右端点r,左端点的颜色lc,右端点的颜色rc,区间成段更新的标记tag,区间有多少颜色段。
Excelsior_kereo
·
2020-09-16 19:37
树链剖分
Bzoj3531:[Sdoi2014]旅行:
树链剖分
+动态开点线段树
题目链接:[Sdoi2014]旅行对于每种颜色维护一颗线段树,为了节约空间这里我们动态开点然后就是弱鸡的线段树操作了指针的动态开点线段树现在才会写……#include#include#include#includeusingnamespacestd;constintmaxn=100010;constintmaxc=100001;intn,m,tot=0,h[maxn],s[maxn],ind=0;
TheWolfWhistlingSong
·
2020-09-16 18:14
OI
树链剖分
普通线段树
BZOJ1146: [CTSC2008]网络管理Network
果然自己太弱听Claris说这一题可以转化为
DFS序
然后容斥可以直接变成logn*logn*n只能膜拜我的是logn*logn*logn*logn*n然后Jrmz说,这还不如暴力。。。。。
Hillan_
·
2020-09-16 18:17
数据结构
树链剖分
树套树
Ants(
树链剖分
+线段树+2-SAT及前缀优化建图)
题目链接https://codeforces.com/problemset/problem/1007/D题解这道题本身并不难,这里只是记录一下2-SAT的前缀优化建图的相关内容。由于问题的本质是给定许多二元集合,判断是否能从每一个二元集合中选出一个元素,使得所有选出的元素合法,因此考虑使用2-SAT解决该问题。不难发现,使用2-SAT解决该问题的复杂度瓶颈在于建图。我们为每一种颜色\(i\)对应的
anzi3457
·
2020-09-16 18:23
数据结构与算法
[SDOI2018]战略游戏,洛谷P4606,圆方树+虚树
正题看到这样的性质就可以想到圆方树,而两点之间贡献的答案就是路径上的圆点数量,为了去重,我们只需要将虚树建出来求路径上的点权和就行了,实际上并不需要建出来,可以发现按照
dfs序
排一下之后就可以考虑欧拉回路
Deep_Kevin
·
2020-09-16 17:07
点双联通分量
圆方树
虚树
图论总结
$为一个最小值,表示这个节点隶属于哪一个强连通分量(每一个low值都是以第一个被访问的在这个强连通分量中的节点时间戳为下标)(单独一个节点也为强连通分量)3、$sta[x]$为一个栈,它内部的东西是以
dfs
anchengao1503
·
2020-09-16 11:11
数据结构与算法
学习笔记-图、最小生成树、最短路径、AOV/AOE的基本算法(Python实现)
一、采用深度优先搜索来遍历整个图得到
DFS序
列的步骤:首先访问顶点v,并将其标记为已访问检查v的邻接顶点,从中选一个尚未访问的顶点,从它出发继续进行深度优先搜索。将顶点v剩余的邻接顶点入栈。
bebr
·
2020-09-15 23:57
数据结构
【树形结构】
树链剖分
恶心至极
树链剖分
树链就是树上的路径。将一棵树划分成若干条链,用数据结构(线段树,平衡树等)去维护每条链,复杂度为O(log2n)O(\log_2n)O(log2n)。
翞达羌
·
2020-09-15 22:17
数据结构
ECNA 2017 Problem H Sheba’s Amoebas(简单dfs +
dfs序
)
题目链接(不过看的大家可能打不开)https://codeforces.com/gym/254936这就是题啦~~ProblemHSheba’sAmoebasAfterasuccessfulKickstartercampaign,ShebaArribahasraisedenoughmoneyforhermail-orderbiologysupplycompany.“Sheba’sAmoebas”c
Autumn_ghost
·
2020-09-15 21:42
第三周 线段树入门
文章目录内容概括涉及算法线段树区间更新查询ZOJ1610线段树+延迟更新区间更新+区间查询(延迟标记)(简单)HDU4027线段树唯一修改(区间开根)暴力区间单点更新+区间查询HDU1540线段树应用单点更新+区间最值查询HDU3974
dfs
心夏心冬
·
2020-09-15 15:00
每周(→∞)记录?
HDU 5044 - Tree (
树链剖分
)
感觉一百年没发题解了。这两天在吴神的嘲讽下终于去做了一年半前就准备学的树剖(:3」∠)然后随便发个模板题代码吧,证明我还是活着的。思路不能用线段树维护,用扫描线的方式,两个端点加减,然后扫一遍。代码#include#include#include#include#include#include#include#include#include#include#include#include#incl
IceIceBear
·
2020-09-15 15:04
HDU
acm
NC23051 华华和月月种树(
DFS序
+树状数组)
题目链接题意:华华和月月一起维护了一棵动态有根树华华和月月一起维护了一棵动态有根树华华和月月一起维护了一棵动态有根树每个点有一个权值。刚开存档的时候,树上只有0号节点,权值为0每个点有一个权值。刚开存档的时候,树上只有0号节点,权值为0每个点有一个权值。刚开存档的时候,树上只有0号节点,权值为0操作1:表示月月氪金使节点i长出了一个新的儿子节点操作1:表示月月氪金使节点i长出了一个新的儿子节点操作
zzugzx
·
2020-09-14 23:55
3631: [JLOI2014]松鼠的新家|
树链剖分
题目大意:小熊每走到一个新的房间就需要吃一个糖,问每个房间至少有几个糖。题目中说的很不明确的样子。。。。。。枚举相邻的两个点,把这连接这两个点的链上的点的权值都+1,然后除了起点外其他的点都再-1可以直接树剖线段树直接标记改,复杂度O(nlog22n)也可以直接差分一下最后在dfs一遍,复杂度O(nlog2n)code1线段树:#include#include#include#include#in
ws_yzy
·
2020-09-14 21:48
树链剖分
Cheap Robot —— 想法,dijkstra+kruskal重构树+并查集+
树链剖分
+lca,有丶东西
Thisway题意:给你一张大小为n的图,并且点1~k是充电站。有q个询问,每次询问你从a走到b最少需要的电池大小为多少。假设你当前电量为c,当走过一个权值为w的边时,你的点会变成c-w,如果这个点是充电站,那么你的电量会便会变回电池容量。问你你每次需要的电池容量最小是多少。题解:有一说一,这道题很厉害。首先先用dijkstra找到每个点距离它最近的充电站的距离,然后的话我们可以知道,如果一条边要
天翼之城*
·
2020-09-14 20:50
想法
树链剖分
最小生成树
BZOJ P3631[JLOI2014]松鼠的新家
哇,刷水题出人品啊方法1:大力线段树+
树链剖分
树剖一眼题啊很简单,每出来两个点直接求一遍LCA然后直接
树链剖分
大力在经过的点上+1就行了,这是不是肥肠简单啊方法2:据说可以差分??
萌呆233
·
2020-09-14 19:32
bzoj
3631:[JLOI2014]松鼠的新家
3631:[JLOI2014]松鼠的新家
树链剖分
~~;#include#definerep(i,k,n)for(inti=k;imaxx){maxx=tmp;son[u]=v;}ff+=tmp;}}returnff
limboman
·
2020-09-14 19:10
BZOJ 3757 苹果树 树上莫队
思路:比较裸的树上莫队,写出来之后,很慢,怀疑是分块的缘故,然后果断找了当年比赛的标称交上去,瞬间rk1,大概看了一眼,他好像是直接用
DFS序
+曼哈顿距离最小生成树搞的,为什么会比分块快?
16bit戦争
·
2020-09-14 19:59
BZOJ
BZOJ3631 [JLOI2014]松鼠的新家(
树链剖分
)
直接进行
树链剖分
每一轮,路径上的点加1最后输出答案时,除起点外的结点权值要减1只用到区间增减,单点查询和值,因此并不需要线段树来维护另一种思路:类似前缀和的思想从起点x到终点y,只需给x,y两个结点加1
cjk_cjk
·
2020-09-14 18:54
树的分治
思路题
[BZOJ3631]JLOI2014松鼠的新家|树上差分
看起来是一个裸的
树链剖分
,其实不用那么麻烦。。
Tag_king
·
2020-09-14 18:00
BZOJ
dsu on tree
由
树链剖分
的性质,任意一个节点到根节点的路径上轻边的数
Rising_shit
·
2020-09-14 18:44
算法
洛谷 P3384 【模板】
树链剖分
题目描述如题,已知一棵包含N个结点的树(连通且无环),每个节点上包含一个数值,需要支持以下操作:操作1:格式:1xyz表示将树从x到y结点最短路径上所有节点的值都加上z操作2:格式:2xy表示求树从x到y结点最短路径上所有节点的值之和操作3:格式:3xz表示将以x为根节点的子树内所有节点值都加上z操作4:格式:4x表示求以x为根节点的子树内所有节点值之和输入输出格式输入格式:第一行包含4个正整数N
Loi_ChlorineHikari
·
2020-09-14 18:42
树链剖分
树链剖分
scanf(“%s“)真的只开读入字符串大小就可以了吗??
本人刚刚在做
树链剖分
“染色”一题的代码重构,上午打爆了是在调不出来,只能从头来过染色bb一句:对于数据结构这种题,一旦打完后一到两个小时之内静态,动态查错都没有调出来就应该果断删掉重构代码,重新想过(更好的其实是休息一会再调才不会跳入固定思维里面
RBW爸爸
·
2020-09-14 18:38
坑点总结
C++
语言
C++
字符串
HNOI2016 Day2 T2 网络
题意分析考虑
树链剖分
。用线段树搞,线段树上每个点开一个优先队列(大根对)。每次有新的交互(u,v),就把不在(u,v)路径上的点加入一个v值。查询时,就查这个点的top。
__HWQ
·
2020-09-14 07:10
HNOI2016
HNOI2016 网络
1.首先这是一堆对于链上的操作,所以我们很容易联想到
树链剖分
。2.然后要求不被影响的最大值,即不经过他的最大
QT_2016_666
·
2020-09-14 06:35
DFS序
详解→→→树形转化为线型
dfs序
:每个节点在dfs深度优先遍历中的进出栈的时间序列,
dfs序
可以把一棵树区间化,即可以求出每个节点的管辖区间。我们先定义两个数组,in[x],out[x]。
From now on...
·
2020-09-14 04:12
dfs序
树状数组
[poj3321]Apple Tree_
dfs序
_树状数组
想法:刚刚学习
dfs序
,刷到水题偶哈哈。什么是
dfs序
?就是在遍历树的时候记录的每个点的出栈入栈序。这样就可以保证每一个节会出现两次且它的子树被其夹在中间。
dianan0938
·
2020-09-14 03:11
洛谷 P3313 [SDOI2014]旅行(
树链剖分
+线段树)
传送门这题是求固定路径上某固定宗教的评级最大值或和,由于我们知道树上路径是顺着链走的,我们可以用
树链剖分
使一条链上的编号连续,方便查询。
Dawn_LLLLLLL
·
2020-09-14 03:41
线段树
树链剖分
P3384 【模板】
树链剖分
#include#include#include#include#includeusingnamespacestd;typedeflonglongLL;intconstMXN=100005;intn,m,R,MOD,cnt,a[MXN],hd[MXN],fa[MXN],dep[MXN],siz[MXN],b[MXN],son[MXN],id[MXN],T[MXN],tp[MXN];intx,y;s
ivy-uu
·
2020-09-14 01:51
树剖
2018.11.08 NOIP模拟 班车(倍增+dfs+bit)
用dfsdfs
dfs序
求出每个点管辖的子树
weixin_30387423
·
2020-09-14 01:22
SPOJ QTREE 系列
QTREEQueryonatree
树链剖分
:QTREELCT:QTREEQTREE2QueryonatreeII倍增LCA:QTREE2PTO7JQueryonatreeIII
dfs序
+主席树:QTREE3QTREE4QueryonatreeIV
yamiedie_
·
2020-09-14 01:39
QTREE
洛谷 P3379 【模板】最近公共祖先(LCA)(
树链剖分
写法)
题目链接:P3379【模板】最近公共祖先(LCA)今天突然想到,树剖可以写LCA,就实现了一下,可以过,在这里存一下代码#include#include#include#include#include#include#include#include#include#include#include#include#include#include#includeusingnamespacestd;#d
riba2534
·
2020-09-14 01:59
【最近公共祖先LCA】
【树链剖分】
codeforces 893F 主席树||线段树合并
思路:主席树解法:按照
dfs序
在树上建立主席树,询问是查询x节点的管辖的那段区间,属于经典操作,问题在于如何控制距离小于等于k,于是我们可以按照点的深度来建主席树,虽然最小值问题不满足前缀相减的性质,但实际上我们并不需要减掉
Lv1_kangdi
·
2020-09-14 00:24
acm
学习总结:Dsu on tree 树上启发式合并
最近学了一种基于
dfs序
的一种的启发式合并,特点就是:暴力。看似暴力。算法的流程
nanhan27
·
2020-09-14 00:21
学习总结
CF 504 E —— Misha and LCP on Tree —— 树剖+后缀数组
题目:http://codeforces.com/contest/504/problem/E快速查询LCP,可以用后缀数组,但树上的字符串不是一个序列;所以考虑转化成序列——
dfs序
!
aodan5477
·
2020-09-14 00:39
DS(数据结构)复习
spalylazy思想[BZOJ1014]字符串hash+splay[BZOJ3786]
dfs序
+splay[BZOJ1588]…[BZOJ2329]額。內心是崩潰的。寫了一晚上。我沒救了。
Prime_min
·
2020-09-14 00:44
OI
知识点
树链剖分
2020年9月12日普及组 T4 树【树状数组】【
dfs序
】
对于修改操作我们给以xxx为根的那整棵子树的每个点加上val∗flag[x]val*flag[x]val∗flag[x],这可以用
DFS序
+树状数组在O(logn)O(logn)O(log
Jackma_mayichao
·
2020-09-14 00:36
题解
树状数组
dfs
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他