树链剖分
文章平均质量分 73
Kirigaya__Kazuto
这个作者很懒,什么都没留下…
展开
-
HYSBZ 1036 树的统计Count
题意:有一棵树,每个节点有权值。 我们现在有三个操作: 1、改变某点的权值。 2、给出两个点,求这两个点之间的路径上所有点的权值之和。 3、给出两个点,求这两个点之间的路径上所有点的最大权值。 一个裸的树剖,刷了两三天树剖的题了,感觉现在已经把树剖理解的差不多了,具体操作现在已经可以很快在脑海中模拟出来了。 #include #include #include #include原创 2017-08-02 09:20:15 · 207 阅读 · 0 评论 -
bzoj2243染色
2243: [SDOI2011]染色 Time Limit: 20 Sec Memory Limit: 512 MB Submit: 8002 Solved: 3005 [Submit][Status][Discuss] Description 给定一棵有n个节点的无根树和m个操作,操作有2类: 1、将节点a到节点b路径上所有点都染成颜色c; 2、询问节点原创 2017-08-01 10:33:11 · 256 阅读 · 0 评论 -
bzoj 4034 [HAOI2015]树上操作
Description 有一棵点数为 N 的树,以点 1 为根,且树点有边权。然后有 M 个操作, 分为三种: 操作 1 :把某个节点 x 的点权增加 a 。 操作 2 :把某个节点 x 为根的子树中所有点的点权都增加 a 。 操作 3 :询问某个节点 x 到根的路径中所有点的点权和。 Input 第一行包含两个整数 N, M 。表示点数和操作数。接下来一行 N 个整数,表示树中节点...原创 2017-07-31 12:56:28 · 290 阅读 · 0 评论 -
HDU - 3966 - Aragorn's Story
题意:给你一颗树,每个节点都有点权,有两个操作 1、求某个点的点权。 2、给出两个点u,v和一个值value,将由点u到点v路径上的点的权值+value(包括u,v)。 节点数 操作数 初始边权 |value| 树链剖分的入门题,今天刚学了树链剖分。感觉树剖还是很有用的,毕竟把一棵树上的操作转化成对于一个区间的操作,会简单方便很多。 今天看了不少的博客,感觉比之前收获了原创 2017-07-31 00:10:35 · 221 阅读 · 0 评论 -
POJ2763
/* 题意:有一颗树,每条边有边权 有两个操作: 1、给出一个点x,求当前点s和点x所在的路径上的边的边权之和(然后s=x)。 2、给出一个边i和一个值val,把第i条边的边权修改为val。 节点数 1e5 操作数1e5 边权1e4 val ≤ 1e4 */ #include #include #include #include #include #in原创 2017-08-02 12:37:36 · 682 阅读 · 7 评论 -
SDOI2014旅行
题意:有一棵树,每个节点有两个值(一个是种类,一个是价值) 有四个操作 1、修改某点的种类。 2、修改某点的价值。 3、给出两个点(种类相同),求这两点之间路径上和他们种类相同的点的最大价值 4、给出两个点(种类相同),求这两点之间路径上和他们种类 这个题敲了整整一天啊,一开始不太明白动态开点什么意思,最后终于明白了,然后无情的被T了一片一片的,终于A了,好开心!!!原创 2017-08-02 21:03:43 · 237 阅读 · 0 评论 -
FZU - 2082 过路费
树剖的裸题,中文题面所以就不多解释了,当然操作二,就是简单的求过路费之和,因为路径唯一,他的那个最少过路费我也是醉了。 #include #include #include #include #include #include using namespace std; typedef long long LL; const int INF = 0x3f3f3f3f; const in原创 2017-08-03 19:11:28 · 238 阅读 · 0 评论