怎样判断二项式系数的奇偶性

来源:百度知道 编辑:UC知道 时间:2024/09/21 03:33:54
对任意数n 问Cn0 Cn1……Cnn(都是组合数,前一个是下标,后一个是上标)中有多少个是偶数,能不能简单计算与判断?

对组合数C(n,k) (n>=k):将n,k分别化为二进制,若某二进制位对应的n为0,而k为1 ,则C(n,k)为偶数;否则为奇数。
组合数的奇偶性判定方法为:
结论:
对于C(n,k),若n&k == k 则c(n,k)为奇数,否则为偶数。
证明:
利用数学归纳法:
由C(n,k) = C(n,k-1) + C(n-1,k-1);
对应于杨辉三角:
1
1 2 1
1 3 3 1
1 4 6 4 1
………………
可以验证前面几层及k = 0时满足结论,下面证明在C(n-1,k)和C(n-1,k-1) (k > 0) 满足结论的情况下,
C(n,k)满足结论。
1).假设C(n-1,k)和C(n-1,k-1)为奇数:
则有:(n-1)&k == k;
(n-1)&(k-1) == k-1;
由于k和k-1的最后一位(在这里的位指的是二进制的位,下同)必然是不同的,所以n-1的最后一位必然是1

现假设n&k == k。
则同样因为n-1和n的最后一位不同推出k的最后一位是1。
因为n-1的最后一位是1,则n的最后一位是0,所以n&k != k,与假设矛盾。
所以得n&k != k。
2).假设C(n-1,k)和C(n-1,k-1)为偶数:
则有:(n-1)&k != k;
(n-1)&(k-1) != k-1;
现假设n&k == k.
则对于k最后一位为1的情况:
此时n最后一位也为1,所以有(n-1)&(k-1) == k-1,与假设矛盾。
而对于k最后一位为0的情况:
则k的末尾必有一部分形如:10; 代表任意个0。
相应的,n对应的部分为: 1{*}*; *代表0或1。
而若n对应的{*}*中只要有一个为1,则(n-1)&k == k成立,所以n对应部分也应该是10。