Loading

Bijective Problem

菜就多练。

I

一共有 \(N\) 个人,\(M\) 天内每天随机给 \(a_i\) 个人分发糖果。假设最后发完之后第 \(i\) 个人有 \(c_i\) 个糖果,求 \(\prod_{i=1}^{n}c_i\) 的期望值对 \(10^9+7\) 取模。

\(1\le n\le 1000,1\le m\le 20.\)

其实可以优化的吧,考虑变成求所有方案中 \(\prod_{i=1}^{n}c_i\) 的和,最后再除以 \(\prod \binom{n}{a_i}\) 即可。然后一个很套路的处理乘积的做法,是把问题转变为,每个人在 \(c_i\) 天中选一天获得所有糖果,然后求方案数。那么可以这么设计 dp 状态,\(f_{i,j}\) 代表前 \(i\) 天,已经有 \(j\) 个人选定在某一天拿到糖果。转移的时候枚举这一天有多少人新决定拿到糖果,假设是 \(k\) 个人。那么转移就可以写成 \(f_{i,j}\times \binom{n-k}{a_{i+1}-k}\times \binom{n-j}{k}\to f_{i+1,j+k}\)。这个 dp 显然是可以写成多项式乘法的形式的,在我的新题中可以做到 \(O(n\log ^2n)\) 的复杂度。

II

https://www.luogu.com.cn/problem/AT_arc101_d

posted @ 2024-06-26 10:36  Semsue  阅读(9)  评论(0)    收藏  举报
Title