Luogu7422 「PMOI-2」城市
题意:给出一张
若点
到 的任意两条简单路径边不相交,则称 关于 互不影响。 若点
到节点 的任意简单路径边经过点 ,则称 必经 。
设
中所有点颜色相同,且与 的颜色不同。 对于任意
, 必经 。 对于任意
, 关于 互不影响。
给出参数
建立广义圆方树,以
若
故在
此时,
分别计算
即统计树上异色祖孙点对数,一次
dfs
并记录栈中颜色即可完成。枚举
中的颜色,对每种颜色分别计算。 由于集合大小至少为
,若对该颜色的点建立虚树,则只有虚树中的点可能有贡献。 现在问题转化成:点有黑白两色,要求
中的点必为黑色,其余规则与 相同,设方案数为 。 考虑如何对单个点
求出 。 若该点有
个子树,设第 个子树中的黑点个数为 。 考虑
,设 为考虑了前 个子树,选取了 个点放入 的方案数,显然有转移:
复杂度为
虚树中的点的子树个数和是
总复杂度为