显然考虑容斥,求出钦定前 k k k种调料最终使用不超过 1 1 1次的方案数 F [ k ] F[k] F[k]即可。
考虑如何求出 F F F。对于一个方案,我们可以考虑其中所有使用了这 k k k种调料中某几种的拉面,那么它们显然将这 k k k种调料中用了一次的调料分为了若干个非空集合,不妨设分成了 c c c个集合,枚举用了一次的调料数目,可知对应的方案数为 ∑ i = c k ( k i ) ⋅ s ( i , c ) ⋅ 2 2 n − k ⋅ 2 c ⋅ ( n − k ) \sum_{i=c}^{k}{k\choose i}\cdot s(i,c)\cdot 2^{2^{n-k}}\cdot 2^{c\cdot (n-k)} ∑i=ck(
Atcoder arc096E
最新推荐文章于 2023-10-30 14:08:27 发布
该博客介绍了如何运用容斥原理来解决Atcoder比赛中arc096E题目的策略。通过计算钦定前k种调料使用不超过1次的方案数F[k],并详细阐述了计算过程,包括将调料分为非空集合,利用第二类斯特林数进行优化,最终达到O(n^2)的时间复杂度解决方案。
摘要由CSDN通过智能技术生成