基本原理
乘法原理
一些工作需要
t
t
t步完成,第一步有
n
1
n_1
n1种不同的选择,第二步有
n
2
n_2
n2种不同的选择······第
t
t
t步有
n
t
n_t
nt种不同的选择,那么完成这项工作的所有可能的选择种数为
n
1
∗
n
2
∗
⋅
⋅
⋅
∗
n
t
n_1*n_2*···*n_t
n1∗n2∗⋅⋅⋅∗nt
加法原理
将一个集合分成若干个不相干的子集,所有子集的方法相加就是方法总数
排列和组合
排列
排列的公式在高中已经学过
A
n
m
=
n
!
(
n
−
m
)
!
A_n^m=\frac{n!}{(n-m)!}
Anm=(n−m)!n!
排列表示从
n
n
n个元素中选
m
m
m个,这
m
m
m个元素内部还有顺序
组合
组合也是之前学过的知识
C
n
m
=
n
!
m
!
(
n
−
m
)
!
C_n^m=\frac{n!}{m!(n-m)!}
Cnm=m!(n−m)!n!
组合表示从
n
n
n个元素中选
m
m
m个,这
m
m
m个元素内部没有顺序
环形r排列
n
n
n个人围坐在圆桌旁,有
(
n
−
1
)
!
(n-1)!
(n−1)!种围法
从
n
n
n个人中选
r
r
r个人围圆桌而坐,一共有
n
!
r
∗
(
n
−
r
)
!
种
方
法
\frac{n!}{r*(n-r)!}种方法
r∗(n−r)!n!种方法
容斥原理和鸽笼原理
容斥原理
设
A
,
B
A,B
A,B是两个集合,则
∣
A
⋃
B
∣
=
∣
A
∣
+
∣
B
∣
−
∣
A
⋂
B
∣
|A\bigcup B|=|A|+|B|-|A\bigcap B|
∣A⋃B∣=∣A∣+∣B∣−∣A⋂B∣
与之前的德摩根律相结合,可以知道
∣
A
ˉ
⋂
B
ˉ
∣
=
∣
U
∣
−
(
∣
A
∣
+
∣
B
∣
)
+
∣
A
⋂
B
∣
|\bar{A}\bigcap \bar{B}|=|U|-(|A|+|B|)+|A\bigcap B|
∣Aˉ⋂Bˉ∣=∣U∣−(∣A∣+∣B∣)+∣A⋂B∣
把两个集合推广到
n
n
n个集合
∣
A
1
⋃
A
2
⋃
A
3
⋅
⋅
⋅
⋃
A
n
∣
=
∑
i
=
1
n
∣
A
i
∣
−
∑
i
≠
j
∣
A
i
⋂
A
j
∣
+
(
−
1
)
n
+
1
∣
A
1
⋂
A
2
⋂
A
3
⋅
⋅
⋅
⋂
A
n
∣
|A_1\bigcup A_2\bigcup A_3···\bigcup A_n|= \sum_{i=1}^n|A_i|-\sum_{i\not=j}|A_i\bigcap A_j|+(-1)^{n+1}|A_1\bigcap A_2\bigcap A_3···\bigcap A_n|
∣A1⋃A2⋃A3⋅⋅⋅⋃An∣=i=1∑n∣Ai∣−i=j∑∣Ai⋂Aj∣+(−1)n+1∣A1⋂A2⋂A3⋅⋅⋅⋂An∣
同样可以用德摩根律得到另外一个相似的结论,即所有集合的补集取交等于全集减去所有集合取并
鸽笼原理
若 n + 1 n+1 n+1只鸽子住进 n n n个鸽笼,则一定有一个鸽笼住进了两只鸽子。这个原理在一些证明题中经常用到