1 条题解
-
0
自动搬运
来自洛谷,原作者为

zhouyuhang
Bénédiction de Dieu dans la solitude搬运于
2025-08-24 23:03:53,当前版本为作者最后更新于2024-08-08 19:57:35,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
首先对问题进行转化。构造 个点的有向图 :将 操作视为向 中加入 的有向边,将 视为加入 的有向边,并要求在每次加边时两端点入度均为 。此时, 即为 的边数,答案即为 的数量。接下来,我们将借助这一构造说明 。
首先说明 。将 视作无向图,下面将说明, 中必然不存在环。考虑反证,如果图中存在环 ,不妨设 的方向为 ,那么 的方向就只能为 ,否则 与 无论谁先谁后都会导出矛盾……以此类推,一直到 的方向只能为 。不妨设 是环中最后一个被操作的边,在它被操作前, 已经被定向为 , 的入度不为 ,从而导出矛盾。因此,将 视为无向图后其中不存在环,即有 。
接下来说明 能够取到。此时将 视为无向图,其必然为一棵树。而在刚刚的证明过程中,我们发现,在最终的定向结果中,不能同时存在 和 这样的两条边。这也就意味着最终每个点的入度都不超过 。而入度的总和为 ,这就说明恰有 个点(记其为 )入度为 ,剩余的点入度恰为 ——实际上,这就是一颗以 为根的外向树。而对于这样一颗外向树,我们只需不断操作叶子结点的连边,即可满足连边时两端点入度为 的限制。因此,每一棵外向树都是可行的, 自然可以取到 。
至此,我们已经可以顺理成章地得到计数做法。注意到在外向树根节点的选择中,每个点都是可行的,因此每颗树都可以衍生出 个不同的外向树。哪些树是可行的呢?不难发现, 的每一颗生成树均可行。而 的生成树个数是一个经典问题,展开行列式即可知其答案为 ,故原问题答案即为 。预处理 并计算,复杂度即为 。
本题也存在一些高复杂度的更加复杂的做法,欢迎大家在题解区分享。
- 1
信息
- ID
- 9929
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 5
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者