摘要: 题目链接:http://poj.org/problem?id=2763 题意: 给定一棵含n个结点的树和树的边权,共有q次操作,分为两种 0 c :求从位置s到c的距离,然后s变成c 1 a b:把第a条边的权值变为b 分析: 树链剖分,注意查询后要改变起点 代码如下: 阅读全文
posted @ 2016-03-23 15:11 邀月独斟 阅读(523) 评论(1) 推荐(0) 编辑
摘要: 题目链接: http://www.spoj.com/problems/QTREE/ 题意: 给一颗树,每条边有一个权值。有两种操作: 1、修改某条边的值; 2、询问a、b两点路径上边权的最大值。 分析:树链剖分模板题 代码如下: 阅读全文
posted @ 2016-03-23 15:03 邀月独斟 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3966 题意: 给出一棵树,并给定各个点权的值,然后有3种操作: I C1 C2 K: 把C1与C2的路径上的所有点权值加上K D C1 C2 K:把C1与C2的路径上的所有点权值减去K Q C:查询节点 阅读全文
posted @ 2016-03-23 14:54 邀月独斟 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 这几天学习了一下树链剖分,个人感觉是线段树在树上的应用,也不能算是一种数据结构吧。比较常见的是对树边的修改和查询问题。 问题引入: 如果题目是在一棵树上进行路径的修改、求极值、求和等问题,大家很容易就会想到用线段树来做,但是这就存在一个问题:线段树存储的是一段连续区间上的信息,,而树的结构是分散的, 阅读全文
posted @ 2016-03-23 14:29 邀月独斟 阅读(563) 评论(0) 推荐(0) 编辑