加法原理
有n种办法,每个办法有m_i种方案,那就一种一种地数出来,相加
乘法原理
分步骤,有n步,每个步骤有m_i种方法完成,就是乘法进行累计
容斥原理
简单例子就是 ∣ A ⋃ B ∣ = ∣ A ∣ + ∣ B ∣ − ∣ A ⋂ B ∣ |A\bigcup B|=|A|+|B|-|A\bigcap B| ∣A⋃B∣=∣A∣+∣B∣−∣A⋂B∣
可以画韦恩图来直观表示
有重复元素的全排列
有k个元素,其中第i格元素有 n i n_i ni个,求全排列的个数
答案是 ( n ! ) / ( ∏ i ( n i ) ! ) (n!)/(\prod_i(n_i)!) (n!)/(∏i(ni)!)
可重复选择的组合
有n个不同的元素,每个元素可以选多次,一共选k个元素,有多少种选择
设第i个元素选择 x i x_i xi个,问题转化为求方程 ∑ i x i = k \sum_ix_i=k ∑ixi=k地非负整数解地个数,令 y i = x i + 1 y_i=x_i+1 yi=xi+1,方程转化为 ∑ i y i = k + n \sum_iy_i=k+n ∑iyi=k+n,就是有k+n个1排成一排,把他们分成n份,就相当于再k+n-1个候选分界线种选择n-1个,所以结果是 C ( k + n − 1 , n − 1 ) = C ( k + n − 1 , k ) C(k+n-1,n-1)=C(k+n-1,k) C(k+n−