C++实现组合
看了一下晚上实现组合的都写得挺复杂的,然后记录下。
首先公式推导:
再把(n-m)!放到上面去。
int func(int n, int m){//这个函数功能是实现组合C(n,m)
int ans = 1;
for(int i = 1;i <= m;i++){
ans = ans * (n-i+1)/i;
}
return ans;
}
看了一下晚上实现组合的都写得挺复杂的,然后记录下。
首先公式推导:
再把(n-m)!放到上面去。
int func(int n, int m){//这个函数功能是实现组合C(n,m)
int ans = 1;
for(int i = 1;i <= m;i++){
ans = ans * (n-i+1)/i;
}
return ans;
}
相关推荐