————树论————
hanyuweining
明日はきっと 明日はきっと 仆が世界の中心なので
展开
-
洛咕P4180 严格次小生成树
鸽了很久的一道题(?)貌似是去年NOIP前听的emm... 首先我们分析一下最小生成树的性质 我们kruskal建树的时候呢是从小到大贪心加的边,这个的证明用到拟阵。(我太菜了不会) 首先我们不存在连接非树边比当前优的情况。 emm我们好像也就用这一条性质就够了。 步入正题 根据我们刚刚说的性质,我们可以枚举每一条边,使它和原来的树边形成一个环,然后我们需要求环上最大值,让我们的...原创 2018-09-26 19:58:56 · 177 阅读 · 0 评论 -
点分治复习记
论我到底学了多少假算法 emm大概开始复习吧(?)整理了一下发现我有些算法可能几个世纪没碰了...得回来看看了QAQ ————————————分个鸽———————————— 点分治,顾名思义,就是分治。。。 每次我们找到树的重心,统计答案,分治子树继续找重心统计答案。一般这类题是树上计数(?) 因为我太弱了所以我只列举了两种点分治的方法。 我们以洛咕4178为例 一、类似容斥 我们...原创 2018-09-25 11:35:14 · 108 阅读 · 0 评论 -
BZOJ4817[Sdoi2017]树点涂色
传送门 sdoi是真的舒服QAQ 比较神奇的数据结构上树题233 我们观察这个题的性质 发现将一条到1的路径染色很像LCT的access操作 我们不妨将相同颜色的点放在一个splay里面 然后access的时候 一条重边变成轻边的时候其实是 子树内ans +1 可以理解成原来它和它上面的节点颜色原本是相同的 然后断开边表示颜色不同了 轻边变成重边 子树内ans -1 原因同理 于是我们首先需...原创 2018-12-01 15:27:32 · 135 阅读 · 0 评论 -
【学习笔记】圆方树(CF487E Tourists)
终于学了圆方树啦~\(≧▽≦)/~ 感谢y_immortal学长的博客和帮助 把他的博客挂在这里~ 点我传送到巨佬的博客QwQ! 首先我们来介绍一下圆方树能干什么呢qwq 1.将图上问题简化到树上问题 2.一般是路径并 3.资磁修改! 然后我们就可以步入正题来学习圆方树啦~ ——超良心圆方树教程!—— 这里是一个前缀芝士清单! 1.Tarjan求点双连通分量 2....原创 2018-12-13 11:32:04 · 167 阅读 · 0 评论 -
【学习笔记】虚树复习记(BZOJ2286 SDOI2011 消耗战)
想写战略游戏却想不起来虚树T^T 所以就有了这篇复习记QwQ ——简介!—— 我们在处理树上问题的时候,dfs是一个常用手段,但是我们发现,如果一棵树上只有一部分关键点,每次dfs需要访问好多不是关键的点,就很浪费时间。所以虚树就被发明出来啦!看到一个非常好的解释,虚树就是通过简化树的形态来进行dfs从而加快效率。 他处理的问题中很多都是 这样的,其中k表示询问节点个数。 建出的虚...原创 2018-12-13 19:47:33 · 243 阅读 · 2 评论 -
BZOJ5329 SDOI2018 战略游戏
传送门 补的第一道SDOI2018? 圆方树上建虚树 欢乐多又多【大雾 大概就是求对于S个点 问删掉一个点使它们不完全连通的方案数 那么我们可以看出 这个其实就是求两两路径并上的割点数量 那么 圆方树来解决是最好的办法【好像也没有别的办法 然后我们发现如果两两统计LCA的话,复杂度是S^2无法接受 可以看出 这个过程和虚树的构建过程十分相似 所以 我们就可以建出虚树 统计答案即可 ...原创 2018-12-14 10:37:12 · 133 阅读 · 0 评论 -
BZOJ2002 [HNOI2010] 弹飞绵羊
LCT access完了一定splay再用!!! 悲伤= = LCT裸题 把调出去设虚点n+1即可 //Love and Freedom. #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #define N 200010 #define ls(x) ...原创 2019-01-19 22:33:34 · 206 阅读 · 0 评论