![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
树分块
Hacheylight
ZJ OIer
展开
-
bzoj 4401 块的个数(树分块)
这题和分块没有关系啊 有两个结论: 1、一棵树划分成 kkk 份的方案是唯一的(但可以不存在); 2、一棵树可以划分成 kkk 份,当且仅当有 kkk 个子节点的子树大小是 nk\frac{n}{k}kn 的倍数 所以只要 DFSDFSDFS 求出每个节点为根的子树大小(即节点个数),然后枚举分成的块数即可解决。 #include <map> #include <set>..原创 2019-02-21 17:28:31 · 245 阅读 · 0 评论 -
Bzoj 1086 [SCOI2005] 王室联邦 (树分块)
考虑一种构造方法: 我们 dfsdfsdfs 整棵树,处理每个节点时,将其一部分子节点分块,将未被分块的子节点返回到上一层 枚举 uuu 的每一个子节点 vvv,递归处理子树后,将每个子节点返回的未被分块的节点添加到集合 sss 中,一旦 ∣s∣≤b|s| \le b∣s∣≤b 则把 sss 作为一个新的块并将 uuu 作为省会,然后清空 sss 并继续枚举 vvv 处理完所有子树后,将 uuu...原创 2019-02-21 19:11:32 · 238 阅读 · 0 评论