在实现组合数计算的时候要防止溢出

1. 在计算组合数C(N, M)的时候若是利用公式n!/(m!*(n-m)!)的话,极可能会溢出。ios 由于对于阶乘,13!已经超过了int能表示的范围,并且也会很快超过long long的表示范围。spa 2. 若是按照定义先计算分子,再计算分母,再相除的话也会溢出。code 3. 最保险的计算方式以下:ip 分子:N*(N-1)*...*(N-M+2)(N-M+1)ci 分母:M*(M-1)
相关文章
相关标签/搜索