bzoj
文章平均质量分 84
Cabinfever
这个作者很懒,什么都没留下…
展开
-
bzoj 3244: Noi2013树的计数
题目大意就是给出dfs序和bfs序,求树的期望高度首先感谢Mektpoy的blog:http://blog.sina.com.cn/s/blog_ab8386bc0101khi0.htmlMektpoy的做法是O(nlogn)的,已经讲得比较清楚了,但还是看了好久才想清楚,所以多说两句。1.当pos[B] = pos[A] + 1时,若B是A的儿子,因为bf原创 2016-07-29 16:07:47 · 816 阅读 · 0 评论 -
bzoj 2733 永无乡 Treap+并查集
E - 永无乡Time Limit:10000MS Memory Limit:131072KB 64bit IO Format:%lld & %lluDescription永无乡包含 n 座岛,编号从 1 到 n,每座岛都有自己的独一无二的重要度,按照重要度可 以将这 n 座岛排名,名次用 1 到 n 来表示。某些岛之间由巨大的桥连接,通过桥原创 2016-07-27 15:20:47 · 1057 阅读 · 2 评论 -
[BZOJ4034][HAOI2015]T2 树链剖分+dfs序
常规题,比较特殊的操作是修改以x为根的子树的所有节点我们知道,这颗子树的dfs序一定是连续的,所以我们只需要对每个节点记录一下,最大的dfs序即可因为树剖要dfs,所以我们直接在第二次dfs时记录,但需要注意的是,因为我们最先对重链的节点编号,所以dfs时也必须先dfs重链我采取的办法是直接加边,因为边表保证了最后加的边最先扩展,或者也可以直接记录一下重边连的(因为longlo原创 2016-11-02 22:09:00 · 475 阅读 · 0 评论 -
[BZOJ2157] 旅游 边权树链剖分
对于边权,我们将其赋值到树边的子节点上就好查询,修改时,只需要在两点都在一条重链时,序号小的点+1即可(x,y,min,max写混WA了一发,气,另外需要改一改线段树的写法了,又臭又长)/************************************************************** Problem: 2157 User: cabinfever原创 2016-11-03 21:13:17 · 648 阅读 · 0 评论 -
[BZOJ1036][ZJOI2008]树的统计Count
树剖板子题为什么都这么长啊,手痛改了值没更新,怒WA两发,我不要BZOJ的WA起飞啊#include #include #include #include #include #include #include using namespace std;const int maxn = 30100;struct edge{ int v,next;}e[maxn原创 2016-11-01 01:06:34 · 340 阅读 · 0 评论 -
BZOJ 3626 LCA 树链剖分
题目链接:bzoj3626题目大意:给出一个有根数,对于询问l,r,z,求出求在[l,r]区间内的每个节点i与z的最近公共祖先的深度之和题解:引用清华爷gconeice的题解显然,暴力求解的复杂度是无法承受的。考虑这样的一种暴力,我们把 z 到根上的点全部打标记,对于 l 到 r 之间的点,向上搜索到第一个有标记的点求出它的深度统计答案。观察到,深度其实就是原创 2016-10-31 18:57:33 · 299 阅读 · 0 评论 -
[BZOJ2243][SDOI2011]染色
(fx,x写反了,还有个地方没加括号,都能过样例,RE好多发)比较简单的树剖,需要注意的地方是因为分成了几段区间求解,所以每次都需要判断边界颜色是否相同,相同答案就要减1。代码还是有点长,跑得还算快/************************************************************** Problem: 2243 User: c原创 2016-11-01 23:43:36 · 319 阅读 · 0 评论