已知组合公式 C( n,m )= (m!∗(n−m)!) n! 。 输入描述 输入两个正整数 n 和 m。 输出描述 输出 C(n,m) 的值。 样例输入 1 5 2 样例输出 1 10 提示 数据范围与提示 1≤n,m≤20c++
时间: 2024-12-28 08:36:36 浏览: 5
组合公式 C(n, m) 计算的是从 n 个不同元素中选择 m 个元素的所有可能组合的数量,它等于从 n 项中取 m 项的乘积除以 m!(m 的阶乘),然后除以 n!(n 的阶乘)。给定输入 n 和 m,如果 m 小于等于 n,并且都是非负整数,我们可以用这个公式计算组合的具体数值。
例如,当 n = 5,m = 2 时,C(5, 2) 等于 (2! * (5-2)!) / (5!),即 (2 * 3) / (5 * 4 * 3 * 2 * 1),简化后得到 10 种可能的组合。
如果你需要编写一个程序来计算这个值,可以使用循环或者现成库函数(如 C++ 中的 `std:: combi` 或者动态规划的方法)。如果你正在寻求如何在 C++ 中计算这个特定例子的答案,我可以提供简单的代码片段:
```cpp
#include <iostream>
using namespace std;
int factorial(int n) {
if (n == 0 || n == 1)
return 1;
else
return n * factorial(n - 1);
}
int combination(int n, int m) {
return factorial(n) / (factorial(m) * factorial(n - m));
}
int main() {
int n = 5, m = 2;
cout << "C(" << n << ", " << m << ") = " << combination(n, m) << endl;
return 0;
}
```
运行这段代码会得到样例输出:C(5, 2) = 10。
阅读全文