acgo题库
  • 首页
  • 题库
  • 学习
  • 天梯
  • 备赛

    竞赛

    • CSP-J/S
    • 蓝桥杯

    考级

    • GESP
    • CPA
    • 电子学会考级
  • 竞赛
  • 讨论
  • 团队
  • 商城
登录
注册
题目详情提交记录(0)
  • 官方题解

    【算法分析】 设置二维数组 fff,f[i][j]f[i][j]f[i][j] 表示将 iii 个数划分为 jjj 个子集的划分数。 当 i==ji == ji==j 或者 j==1j == 1j==1 时,划分的方案数为 111。 其他情况: f[i][j]f[i][j]f[i][j] 可以由两个部分得来: (1) 相比于 f[i−1][j−1]f[i-1][j-1]f[i−1][j−1],f[i][j]f[i][j]f[i][j] 多出的 iii 可以单独作为一个子集,有 f[i−1][j−1]f[i-1][j-1]f[i−1][j−1] 种方法 (2) 相比于 f[i−1][j]f[i-1][j]f[i−1][j],f[i][j]f[i][j]f[i][j] 多出的 iii 可以放入划分的 jjj 个子集中的一个,有 f[i−1][j]∗jf[i-1][j] * jf[i−1][j]∗j 种方法 所以 f[i][j]=(f[i−1][j]∗j+f[i−1][j−1])f[i][j] = (f[i-1][j]*j+f[i-1][j-1])f[i][j]=(f[i−1][j]∗j+f[i−1][j−1])%100071000710007 【参考代码】 【时间复杂度】 O(nr)O(nr)O(nr) 【预计得分】 100pts100pts100pts

    userId_undefined
    AC君
    管理员倔强青铜
    192阅读
    1回复
    2点赞
暂无数据

提交答案之后,这里将显示提交结果~

首页