我被赋予了解决这个问题的任务:
五选三,12345,正好有十种方式:
123, 124, 125, 134, 135, 145, 234, 235, 245, and 345
在组合数学中,我们使用符号
5C3 = 10
. 一般来说,nCr = n! / r!(n−r)!
其中
r ≤ n
,n! = n×(n−1)×...×3×2×1
和0! = 1
.直到
n = 23
,价值超过一百万:23C10 = 1144066
。
nCr
, for , 有多少(不一定不同)的值1 ≤ n ≤ 100
大于一百万?
我必须在 Ruby 中提出一个算法来解决这个问题,但我似乎不明白它是如何完成的。