组合数计算器

C(n,r) = n! / (r!(n−r)!)

Compute the number of combinations C(n, k) without repetition.

📐 计算公式
组合数(连乘口径,避免阶乘溢出):C(n,r) 逐项累乘 c = c×(n−i+1) ÷ i(i=1..r);排列数 P(n,r) = C(n,r)×r!;子集总数 = 2ⁿ。校验:n、r 四舍五入取整、上限封顶 1000,负数提示报错;r > n 时连乘因子出现 0,C(n,r) 恒为 0(数学定义)。判据:无固定分级,结果按千分位展示。

从 n 个元素取 r 个的组合数。

📌 计算说明
  • C(10,3) = 120。
  • 与顺序无关。

📚 深度解析:组合 C(n,k)

💡 常见使用场景

选人组队
从 5 人中选 2 人,组合数 C(5,2)=5!/(2!×3!)=(5×4)/(2×1)=10 种。与排列不同,选{A,B}和{B,A}算同一种。
与排列对比
同样 5 选 2,若顺序有关(如冠亚军)则用排列 P(5,2)=5×4=20,是组合的两倍,因为每对顺序有两种。

❓ 常见问题(FAQ)

组合和排列的核心区别?
组合不计顺序(选出来即可),排列计顺序(谁先谁后不同)。公式上 C(n,k)=P(n,k)/k!,即把顺序重复的情况除掉。
C(n,k) 什么时候等于 C(n,n-k)?
恒成立:从 n 个里选 k 个留下,等价于选 n-k 个拿走,二者一一对应,故 C(n,k)=C(n,n-k)。

Formula & Standard References

Item Formula / Note Source / Standard
Combination countC(n,k) = n! ÷ [k!(n−k)!], unordered selectionStandard combinatorics definition
Symmetry identityC(n,k) = C(n, n−k); use the smaller k to avoid overflowConsequence of Pascal's rule
Pascal recurrenceC(n,k) = C(n−1,k−1) + C(n−1,k), the Yang Hui triangle (c. 1050)Yang Hui 1261 / Pascal 1654
Combination identitiesΣ C(n,k) = 2^n; Vandermonde ΣC(r,k)C(s,n−k) = C(r+s,n)Standard combinatorial identities