1 条题解
-
0
核心思路
本题要求计算所有 个点的完美图(每个连通块都是相同大小的完全图)的 染色方案数之和。关键在于利用组合数学和中国剩余定理来解决模数下的计数问题。
关键观察
-
图结构分析:完美图对应于将 个点划分成若干个大小为 的完全图,其中 是 的因子
-
染色方案:每个大小为 的完全图需要 个不同的颜色,染色方案数为
重要公式
计数公式
对于固定的划分大小 (其中 ),对应的方案数为:
$$\frac{n!}{(d!)^{n/d} \cdot (n/d)!} \cdot [m(m-1)\cdots(m-d+1)]^{n/d} $$其中:
- 第一部分是划分的组合数:将 个标号点划分成 个大小为 的完全图的方式数
- 第二部分是染色数:每个完全图需要 种不同颜色
总答案
最终答案为所有因子 对应的方案数之和:
$$\text{Answer} = \sum_{d \mid n} \frac{n!}{(d!)^{n/d} \cdot (n/d)!} \cdot P(m,d)^{n/d} $$其中 是排列数。
算法核心:中国剩余定理
由于模数 是质数,且可以分解为:
算法采用中国剩余定理:
- 分别在模 下计算答案
- 使用中国剩余定理合并结果
- 最终计算
技术要点
- Lucas定理扩展:处理大阶乘模小质数的计算
- 质因数分解:高效计算组合数在质数模下的值
- 因子枚举:只枚举 的因子,避免完全分解
-
- 1
信息
- ID
- 4172
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者