组合数
从 n n n 个不同元素中,任取 m ( m ≤ n ) m(m≤n) m(m≤n) 个元素并成一组,叫做从 n n n 个不同元素中取出 m m m 个元素的一个组合;从 n n n 个不同元素中取出 m ( m ≤ n ) m(m≤n) m(m≤n) 个元素的所有组合的个数,叫做从 n n n 个不同元素中取出 m m m 个元素的 组合数,记作 C n m C_n^m Cnm。
注意:
- 线性文本中的 C ( n , m ) C(n,m) C(n,m) 等价于本文中的 C n m C_n^m Cnm。
- 特别地, ∀ n > 0 \forall n>0 ∀n>0 有 C n 0 = 1. C_n^0=1. Cn0=1.
组合数的性质
- (定义式) ∀ m , n ∈ N \forall m,n\in \N ∀m,n∈N 有 C n m = n ! m ! ( n − m ) ! C_n^m=\frac{n!}{m!(n-m)!} Cnm=m!(n−m)!n!
-
∀
m
,
n
∈
N
∗
\forall m,n\in \N^*
∀m,n∈N∗ 且
m
≠
n
m\neq n
m̸=n 有
C
n
m
=
C
n
n
−
m
C_n^m=C_n^{n-m}
Cnm=Cnn−m
证明: 由 定义式 易得。 -
∀
m
,
n
∈
N
∗
\forall m,n\in \N^*
∀m,n∈N∗ 有
C
n
m
=
C
n
−
1
m
−
1
+
C
n
−
1
m
C_n^m=C_{n-1}^{m-1}+C_{n-1}^m
Cnm=Cn−1m−1+Cn−1m
证明: 右 边 = ( n − 1 ) ! ( m − 1 ) ! ( n − m ) ! + ( n − 1 ) ! m ! ( n − m − 1 ) ! = ( n − 1 ) ! × m m ! ( n − m ) ! + ( n − 1 ) ! × ( n − m ) m ! ( n − m ) ! = ( n − 1 ) ! × ( m + n − m ) m ! ( n − m ) ! = n ! m ! ( n − m ) ! = C n m . \begin{aligned}右边&=\frac{(n-1)!}{(m-1)!(n-m)!}+\frac{(n-1)!}{m!(n-m-1)!}\\ &=\frac{(n-1)!\times m}{m!(n-m)!}+\frac{(n-1)!\times(n-m)}{m!(n-m)!}\\ &=\frac{(n-1)!\times(m+n-m)}{m!(n-m)!}\\ &=\frac{n!}{m!(n-m)!}\\ &=C_n^m.\end{aligned} 右边=(m−1)!(n−m)!(n−1)!+m!(n−m−1)!(n−1)!=m!(n−m)!(n−1)!×m+m!(n−m)!(n−1)!×(n−m)=m!(n−m)!(n−1)!×(m+n−m)=m!(n−m)!n!=Cnm.
Q.E.D.. \text{Q.E.D..} Q.E.D..
Lucas 定理
Lucas 定理 是用来求 C n m m o d    p C_n^m\mod p Cnmmodp, p p p 是素数的值, C N m m o d    p = C n p m p × C n m o d    p m m o d    p m o d    p C_N^m\mod p=C_{\frac{n}p}^{\frac{m}p}\times C_{n\mod p}^{m\mod p}\mod p CNmmodp=Cpnpm×Cnmodpmmodpmodp