题目链接 问题分析 没有想到母函数的做法…… 其实直接看题思路挺简单的。发现如果每种花都有无限多的话,问题变得十分简单,答案就是\(s+n-1\choose n - 1\)。然后发现\(n\)只有\(20\),于是大力容斥一波就完事了。 参考代码 #include <cstdio>const long long Max_n = 30;const long long Mod = 10000000
题目 n n n种颜色,每种颜色有 a i a_i ai枝花,现挑出 m m m朵,使没有颜色完全相同的方案 分析 可以发现,这道题是求多重集的组合数,根据容斥原理也就是 C k + r − 1 k − 1 − ∑ i = 1 k C k + r − n i − 2 k − 1 + ∑ 1 ≤ i < j ≤ k C k + r − n i − n j − 3 k − 1 −