容斥:有限元素多重集合
这里主要是补一下之前的留的坑。
令 {t1⋅a1,t2⋅a2,...,tn⋅an} 为原集合,求其中的 r 组合。
考虑对于满足 ti≥r 时,ti⋅ai 与 r⋅ai 在计数中并无区别。
将集合中的所有元素中满足 ti≥r 的 ti 皆替换为 r。
故使集合变为 {t1⋅a1,t2⋅a2,...,tn⋅an},(ti≥r)。
再考虑容斥原理,令 Ai 表示为对于无限元素的多重集合中 ai 出现过 ti 次以上的 r 组合。令 S 为无限元素的多重集合的 r 组合方案数,则原集合的 r 组合方案数为:
∣S∣−i∑∣Ai∣+i,j∑∣Ai∩Aj∣−i,j,k∑∣Ai∩Aj∩Ak∣+⋯
由《多重集合的排列组合》一章中我们可知,对于无限元素多重集合的方案数为:(k−1r+k−1)。
此时我们再对于 Ai 的方案数进行讨论,可视为对于 r 组合中已确定选取 ti+1 个 ai 后,再从原集合中继续选取剩余的 k−ti−1 个数,故得:
(k−ti−2r+k−ti−2)=(rr+k−ti−2)
一般直接考虑枚举集合来确定方案数。
蒟蒻不会如何进一步转化,如果有大佬明白请教教我/kel