AtCoder Dwango Programming Contest V E
2024-09-02 14:05:17
题目链接:https://dwacon5th-prelims.contest.atcoder.jp/tasks/dwacon5th_prelims_e
题目描述:
给定一个大小为\(N\)的数组\(A\),记\(f(p)\)为排列\(p\)的所有环的中的最小值的乘积。记\(b_i\)为所有形成了\(i\)个环的排列的\(f(p)\)的和。求\(b_1, b_2, ..., b_N\)的\(GCD\)模\(998244353\).
解题报告:
先将数组排序,然后想到一个和第一类斯特林数DP很类似的一个DP:
\[DP[i][j] = DP[i - 1][j - 1] * a_i + DP[i - 1][j] * i
\]
\]
答案即为\(GCD_{i=1}^N DP[N][i]\)
记多项式\(P_i(t)\)为\(\sum_{j=1}^i DP[i][j] \cdot t^j\)
DP方程可以改写成以下形式:
\(P_i(t) = P_{i-1}(t) * (a_i * t + i)\)
\(P_N(t) = \prod_{i=1}^N (a_i * t + i)\)
引理:
记c(P)为多项式P所有系数的GCD。有c(PQ)=c(P)c(Q)。
根据以上引理,有:\(c(P_N(t)) = \prod_{i=1}^N \gcd(a_i, i)\)
最新文章
- Linux服务器,PHP的10大安全配置实践
- java 平台 权限管理
- 简单的angular表单验证指令
- Swift中的Optional类型 (可选类型)与强制解包 ? !
- TCP协议三次握手过程分析【图解,简单清晰】
- scala学习笔记:无参函数
- 调用API函数,在窗口非客户区绘图(通过GetWindowDC获得整个窗口的DC,就可以随意作画了)
- Mysql入门到精通数据表的操作
- C#Redis列表List
- PHP数据访问增删查(20161028)
- OpenCL异构计算资料收集
- PowerBi利用Python Script绕过ODBC来导入MongoDB数据
- data.table包使用应该注意的一些细节
- 【NPOI】通过NPOI从内存流中创建EXCEL
- Bootstrap常用单词组
- js外部调用layui.use中的函数的写法
- Linux 安装 java
- alpha冲刺(7/10)
- Mentor面向智能家居的IoT方案
- dj django与ajax交互