有这样一个贪心的思路:当某一个点搜完某个儿子后,发现当前子树中没有被选入其他省的点数超过了B,就将其当做一个省,并把这个点作为省会(注意:这个点并没有进入这个省),显然可以发现此时每一个省的点数都小于2B。另外,当搜完后发现还有小于B的点,那么就将这些点都归入最后一个省,省的点数仍然小于3B。 1 ...
分类:
其他好文 时间:
2019-07-28 10:57:59
阅读次数:
110
题意; 一棵N个节点的树,有点权。M次询问,每次询问点(u,v)路径上有多少个权值不同的点。 题解: 树上开莫队,分块方法可以参照BZOJ1086题的方式。按照询问点(u,v)所在块将询问进行排序。更新路径时用vis数组标记路径上的点是否访问过。 #include <bits/stdc++.h> u ...
分类:
其他好文 时间:
2018-04-29 22:13:06
阅读次数:
189
想学树上莫队结果做了个树分块。 看完题后想到了菊花图的形状认为无解,结果仔细一瞧省会可以在外省尴尬 对于每一颗子树进行深搜,一旦遇到加在一起大小达到B则将它们并为一省,因为他子树搜完以后没有分出块的大小是小于B的,而且他自己当前剩下的也是小于B的,所以可以放心和。 最后剩下的点肯定也小于B所以与最后 ...
分类:
其他好文 时间:
2018-01-25 13:03:48
阅读次数:
142
http://www.lydsy.com/JudgeOnline/problem.php?id=1086 题面源于洛谷。 题目描述 “余”人国的国王想重新编制他的国家。他想把他的国家划分成若干个省,每个省都由他们王室联邦的一个成员来管理。 他的国家有n个城市,编号为1..n。一些城市之间有道路相连, ...
分类:
其他好文 时间:
2018-01-03 17:24:40
阅读次数:
159
【传送门:BZOJ1086】 简要题意: 给出n个点,n-1条边,将这n个点分成若干个部分,每个部分都有一个中心,给出B,要求2B>=每个部分的点数>=B,是每个部分中的任意一个点到达中心所经过的点(除了最后一个点,即该部分的中心点)都必须属于该部分,求出是否能满足将n个点都分成若干个部分 题解: ...
分类:
其他好文 时间:
2017-09-28 19:57:07
阅读次数:
166
Description “余”人国的国王想重新编制他的国家。他想把他的国家划分成若干个省,每个省都由他们王室联邦的一个成员来管理。他的国家有n个城市,编号为1..n。一些城市之间有道路相连,任意两个不同的城市之间有且仅有一条直接或间接的道路。为了防止管理太过分散,每个省至少要有B个城市,为了能有效的 ...
分类:
其他好文 时间:
2017-09-10 13:32:56
阅读次数:
185
我以为树分块什么的必有高论,结果居然是个暴力…… 方法也很简单,我看下每个节点dfs的时候是否已经大于k个,大于的话我就新开一块。 注意dfs的时候当前节点不能放进子树的块中。 ...
分类:
其他好文 时间:
2017-05-12 15:32:53
阅读次数:
136
[BZOJ1086][SCOI2005]王室联邦 试题描述 “余”人国的国王想重新编制他的国家。他想把他的国家划分成若干个省,每个省都由他们王室联邦的一个成员来管理。他的国家有n个城市,编号为1..n。一些城市之间有道路相连,任意两个不同的城市之间有且仅有一条直接或间接的道路。为了防止管理太过分散, ...
分类:
其他好文 时间:
2017-05-01 12:02:24
阅读次数:
182
Description “余”人国的国王想重新编制他的国家。他想把他的国家划分成若干个省,每个省都由他们王室联邦的一个成员来管理。他的国家有n个城市,编号为1..n。一些城市之间有道路相连,任意两个不同的城市之间有且仅有一条直接或间接的道路。为了防止管理太过分散,每个省至少要有B个城市,为了能有效的 ...
分类:
其他好文 时间:
2017-03-25 22:17:15
阅读次数:
164
http://www.lydsy.com/JudgeOnline/problem.php?id=1086 (题目链接) 本来是来学树上分块的,没想到正解是贪心+dfs。。。 题意:求将树分为几个联通块,每个联通块大小大于B小于3B,是否可行。 Solution 题都没看就翻了题解。。发现时贪心+df ...
分类:
其他好文 时间:
2016-09-27 23:30:40
阅读次数:
378