1 条题解

  • 0
    @ 2026-9-3 10:32:05

    题解

    思路

    xx 服从参数为 nn 和 p=1/mp=1/m 的二项分布。小范围可以枚举每次是否抽中;中等范围可以直接枚举二项分布的取值;当 nn 很大时,改用下降幂矩。

    做法

    普通幂可以用第二类 Stirling 数展开:

    xk=∑j=0kS(k,j)xj‾.x^k=\sum_{j=0}^k S(k,j)x^{\underline j}.

    二项分布的第 jj 阶下降幂矩为

    E[xj‾]=nj‾pj.\mathbb E[x^{\underline j}]=n^{\underline j}p^j.

    因此答案为

    ∑j=1kS(k,j)nj‾m−j.\sum_{j=1}^k S(k,j)n^{\underline j}m^{-j}.

    使用递推 S(i,j)=S(i−1,j−1)+jS(i−1,j)S(i,j)=S(i-1,j-1)+jS(i-1,j) 逐行计算到第 kk 行。随后同步维护 nn 的下降幂和 m−1m^{-1} 的幂并求和。

    中等规模的直接二项分布算法从 P(x=0)=(1−p)nP(x=0)=(1-p)^n 出发,用相邻概率比递推 P(x+1)P(x+1),再累加 xkP(x)x^kP(x)。

    复杂度

    满分算法时间复杂度为 O(k2)O(k^2),空间复杂度为 O(k)O(k)。

    • 1

    信息

    ID
    1227
    时间
    5000ms
    内存
    256MiB
    难度
    10
    标签
    递交数
    1
    已通过
    0
    上传者