容斥原理
基本排列数n!
多重集排列数n!/(n1!/n2!/n3!....../nN)
基本组合数C(n,m)
多重集组合数C(r+k-1,k-1) 有r个球和球的种类有k种,那么需要k-1个位置来区分球的种类,一共需要r+k-1个位置,选k-1个位置,所以是C(r+k-1,k-1)
多个相同颜色的球相邻可以看成是一个球
容斥原理的思想,把至少看成恰好
至少1对球相邻的方案数就等于恰好1-恰好2+恰好3-恰好4
为什么恰好0个的方案数不是至少0个减去至少1个?
因为很多题解表述有问题,他们指的至少x个,其实是钦定x个,也就是指定某x个条件成立的情况下,后面的方案数,所以会出现重复
钦定就是选定一个集合后再选定一个特殊元素
一个条件对应一个集合
为什么要这样算,因为这样算好算,其实也就是多个条件集合有重叠的情况
多个条件都不成立,不好算
多个条件成立好算
韦恩图的一个圈就代表一个条件,一个条件就代表一个集合,表示符合这个条件的元素组成的集合
某种颜色的球相邻是一个条件