n&k == k 是什么意思?

来源:百度知道 编辑:UC知道 时间:2024/05/27 04:26:44
对于C(n,k),若n&k == k 则c(n,k)为奇数,否则为偶数,这里n&k == k是什么意思?
C(n,k)位组合数,n为下标,k为上标

n&k是n(按位与)k的意思,比如说n=9,k=3,那么转化成二进制n=1001,k=0011,进行运算(都是1则为1,否则为0)后得到1,如果它和k相等,组合数则为奇数,否则为偶数,至于其中的道理是:根据二进制的运算法则,从后向前数,有几个0(不能有间断),就有几个偶数因子(这里就说是以2为因子吧),按位与的功能就是消0,当然根据组合公式,分子上的偶数因子不可能比分母上的少,但是如果相等的话,那么这个数就是一个奇数了,按位与的功能是0和1在一块就消1,那么如果想保留原有的k值,n转化成二进制后就要有许多个1(通俗一点),这样的话,他的偶数因子也会减少,经过证明,可以得到当n&k==k时,n!和k!(n-k)!的偶数因子一样多,就可以把它们消去,从而得到一个奇数。
满意吗?