二項係数の計算...手動で

2つの記事の前半で、コンピューターを使用して二項係数を計算するトピックが取り上げられました。
Cでの二項係数の計算(C ++)
フーリエ変換を使用した二項係数の計算
それらを読むことにより、これは複雑でリソース集約的なタスクであると考えられるかもしれません。
何かをプログラミングする前に、何が何であるかを理解しましょう。

階乗の式: 画像

開きます:

明らかに、 そして

次に、例を数えてみましょう



10、9、8が相互に減少していることはすぐに明らかになり、

さらに詳しく見ると、削減はそれだけでは終わりません。 14は7、12 x 6、15 x 5、16 x 4で除算されます。3の残りの15は3で除算され、7 2の残りは最後の2で除算されます。 これらすべての削減を行った後、分母を取り除き、次の製品を取得します。

数えてみよう



最初の略語:

さらに、114/57 = 2、112 / 56 = 2、110 / 55 = 2など、62/31 = 2までがわかりやすい

2番目の略語:

そのため、分子に27個のdoubleを取得しました。これを分母で削減しようとします。 最初に、分母からの2のべき乗と分子からの対応する2の数をすべて消します。 (2、4、8、16 = 10デュース、17残り)



分母には​​さらに11の偶数があり、それらの一部は均等に複数です。 すべての削減の後、分母は偶数を残さず、分子には2つのデュースがあります。



トリプルを見てみましょう。


さらに、5、7、11、17、19、23、29削減します

残っています:

これは23 544 809 717 399 465 172 377 319 715 292 496に相当します。

Source: https://habr.com/ru/post/J274889/


All Articles