信息
- ID
- 1502
- 时间
- 2000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者
按所选人数直接写答案是
x=1∑N(xN)xk.用第二类 Stirling 数展开普通幂:
xk=j=0∑kS(k,j)xj.交换求和后,先指定一个有序的 j 人组,再任意选择其余人员是否加入,可得
$$\sum_x\binom Nx x^{\underline j}=N^{\underline j}2^{N-j}.$$用递推 S(t,j)=S(t−1,j−1)+jS(t−1,j) 求出第 k 行 Stirling 数。随后依次维护下降幂 Nj 和 2N−j,累加
S(k,j)Nj2N−j.因为 N<109+7,当 j>N 时下降幂为零,只需枚举到 min(k,N)。
子任务 1 可以枚举所有非空子集;子任务 2 可以直接按人数枚举 x 并维护组合数。
时间复杂度为 O(k2),空间复杂度为 O(k)。