我正在寻找在 python 中内置的数学库是否是 nCr (n Choose r) 函数:
我知道这可以编程,但我想我会先检查它是否已经内置。
以下程序nCr以有效的方式计算(与计算阶乘等相比)
nCr
import operator as op from functools import reduce def ncr(n, r): r = min(r, n-r) numer = reduce(op.mul, range(n, n-r, -1), 1) denom = reduce(op.mul, range(1, r+1), 1) return numer // denom # or / in Python 2
从 Python 3.8 开始,二项式系数在标准库中可用math.comb:
math.comb
>>> from math import comb >>> comb(10,3) 120