多項係数の偶奇
多項係数 の偶奇を求めたくなることはよくあると思います。
Lucas の定理を使えば形式的に計算できますが、ここでは組合せ的な方法で多項係数の偶奇を求めてみます。
まず多項係数の値は、一列に並べた 個のボールのうち 個を色 で塗る方法の数と解釈できます。なのでそのような塗り方の偶奇を考えます。
ここで色の塗り方が左右対称でない場合、左右反転することで異なる塗り方と対応付けることができます。
つまり左右対称でない色の塗り方は偶数です。よって塗り方全体の偶奇は左右対称な塗り方の偶奇に等しいです。
が偶数のとき、 の中に奇数があれば左右対称な塗り方は存在しません。この場合、塗り方の総数は偶数と分かります。 が全て偶数なら、左右対称な塗り方の数は 個のボールのうち 個を色 で塗る方法の数と一致します。
が奇数のとき、 の中の奇数がちょうど つでなければ、左右対称な色の塗り方は存在しません。このときも塗り方の総数は偶数と結論できます。そうでないとき、一般性を失わずに の中で だけが奇数であるとします。この場合、左右対称な塗り方の数は、 個のボールのうち 個を色 で、 個を色 で塗る方法の数に等しいです。
以上のどちらの場合でも、小さい問題への帰着は各 の右シフトに等しくなっています。これを踏まえると、 をそれぞれ 2 進数で表したとき、 で 0 になっている桁については でも 0、 で 1 になっている桁については の中でちょうど 1 つが 1 になっていることが多項係数の値が奇数になることの必要十分条件になります。
これは と 1 つの式で表すことができます ( は整数の bitwise OR)。