计算C(n,m); 补充。
来源:互联网 发布:python和ruby的区别 编辑:程序博客网 时间:2024/06/17 17:15
Description
给出两个正整数n,m(1<=m<=n<=30) 求出排列组合C(n,m)的个数。
Input
一行两个整数,n,m。请处理到文件尾
Output
每行一个整数,为C(n,m)。
Sample Input
2 1
Sample Output
2
#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#include <string>using namespace std;typedef long long ll; ll work(int n ,int k){ if(k > n/2){ k = n-k; } ll a = 1; ll b = 1; int i; for(i = 1 ; i <= k ; ++i){ a *= n-i+1; b *= i; if(a%b == 0){ a /= b; b = 1; } } return a/b; }int main(){ int n,k; while(scanf("%d%d",&n,&k)!=EOF){ cout<<work(n,k)<<endl; } return 0; }
f[0]=0;for(int i=1;i<=400002;i++) f[i]=f[i-1]+log(i*1.0);double logC(int m,int n){ return f[m]-f[n]-f[m-n];}C(m,n)=exp(logC(m,n))
0 0
- 计算C(n,m); 补充。
- 计算组合数C(m,n)
- 用递归计算C(m,n)
- 计算组合数C(n,m)
- 组合数C(n,m)的计算
- 计算组合公式C(n,m)的化简
- 组合数计算C(n,m)加取模情况
- 计算组合数C(n,m)(SDUT 2241)
- C(m,n)
- 组合C(m,n)
- 排列组合 C(n,m)
- 排列组合 C(n,m)
- 计算M×N精确值
- 计算M的N次方
- 计算给定集合的幂集(如输入"ABCDE")/计算二项式系数C(M,N)
- 判断C(n,m) 奇偶
- 组合数C(n,m)
- 瞬间移动(c(n, m))
- 应用层协议实现系列(四)——DNS服务器之设计与实现
- Oracle外键不加索引引起死锁
- NYOJ241字母统计864177
- 线性表的顺序存储结构的c语言实现
- Android源码编译选项eng、user、userdebug的区别
- 计算C(n,m); 补充。
- 花谢有时
- rfhrfhgd
- 第十二周(项目二)——教师兼干部类。
- IO不再神秘
- mysql数据库jdbc驱动程序的安装与测试
- C#中Linq查询基本操作
- c++对象数组和this指针
- 电影情结之WiFi生活