1 条题解
-
0
Divisor Paths 题解(浓缩版)
核心转化
设 ,每个因子对应指数向量 。
边连接指数向量相差一个单位(单维 ),边权 ,其中 。关键结论
对于询问 ,设 ,指数 :
- 最短路径长度
- 所有最短路径 必须先下降()再上升()
- 路径计数:
- 下降:需减少 步,方案数
- 上升:需增加 步,方案数
- 答案 $= \dfrac{(\sum d_i)!}{\prod d_i!} \cdot \dfrac{(\sum e_i)!}{\prod e_i!} \pmod{998244353}$
算法步骤
- 质因数分解 ,得素数 及最大指数
- 预处理阶乘和逆元到
- 每个询问:
- 对每个 ,计算 中的指数
- 令 ,
- 计算 ,
- 输出 $fact[S_d] \cdot fact[S_e] \cdot \prod inv\_fact[d_i] \cdot \prod inv\_fact[e_i]$
复杂度
- 分解 或 Pollard-Rho
- 每个询问 ,,
- 1
信息
- ID
- 6439
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 2
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者