树---DFS序
pengwill97
C.S Master
展开
-
POJ.3321 Apple Tree ( DFS序 线段树 单点更新 区间求和)
POJ.3321 Apple Tree ( DFS序 线段树 单点更新 区间求和)题意分析卡卡屋前有一株苹果树,每年秋天,树上长了许多苹果。卡卡很喜欢苹果。树上有N个节点,卡卡给他们编号1到N,根的编号永远是1.每个节点上最多结一个苹果。卡卡想要了解某一个子树上一共结了多少苹果。现在的问题是不断会有新的苹果长出来,卡卡也随时可能摘掉一个苹果吃掉。你能帮助卡卡吗?前缀技能边表存储树 DFS时间戳原创 2017-08-11 23:55:04 · 869 阅读 · 0 评论 -
HDU.5692 Snacks ( DFS序 线段树维护最大值 )
HDU.5692 Snacks ( DFS序 线段树维护最大值 )题意分析给出一颗树,节点标号为0-n,每个节点有一定权值,并且规定0号为根节点。有两种操作:操作一为询问,给出一个节点x,求从0号节点开始到x节点,所能经过的路径的权值最大为多少;操作二为修改,给出一个节点x和值val,将x的权值改为val. 可以看出是树上修改问题。考虑的解题方式有DFS序+线段树,树链剖分,CXTree。由于后两原创 2017-08-12 14:58:35 · 325 阅读 · 0 评论 -
【滚动训练】CodeForces877E Danil and a Part-time Job (DFS序+线段树)
题意 给一颗树,树上每个节点都有一个开关,每次操作对一个节点及其子树上节点的开关翻转,询问以某个节点为根的子树上开着的开关数目。 题解 dfs序将树形结构转换成线性结构,然后用线段树+lazy标记维护即可。 需要注意的就是编号问题,因为原树中的编号和线段树维护的区间编号不是一一对应的。 dfs序的pre编号是原树编号到线段树编号的一个hash。 所以在建树初始化的时候有一下两种方法...原创 2018-08-07 13:47:11 · 227 阅读 · 0 评论