求组合数模板
2016-03-03 08:13
288 查看
long long c[100][50]; void C(long long n,long long m) { long long i,j; if(m>n/2) m=n-m; memset(c,0,sizeof(c)); for(i=0;i<=m;i++) c[0][i]=c[1][i]=1; for(i=0;i<=m;i++) c[i][i]=1; for(i=0;i<=n;i++) c[i][0]=1; for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { if(i!=j) c[i][j]=(c[i-1][j]+c[i-1][j-1]); } } }
组合数取模
const int mod=10056; int combine(int n,int m) //计算组合数C(n,m) { int sum=1; //线性计算 for(int i=1,j=n;i<=m;i++,j--) { sum=sum*j/i; sum=sum%mod; } return sum; }
相关文章推荐
- 智能路由——ESB
- Class类结构
- lintcode-easy-Partition Array by Odd and Even
- hdu:4035Maze
- DDOS--SYN Flood攻击与防御
- LinkList模拟栈的操作以及模拟队列的操作
- mysql的基本使用方法
- Android Studio首次运行卡在Fetching android SDK compoment information
- 初学Jquery easyui后台框架基础所了解的知识和注意要点
- 2014 android毕设代做 代做Android毕设 安卓毕设
- 【BZOJ 1033】 [ZJOI2008]杀蚂蚁antbuster
- cloudstack4.4新增功能前瞻
- android开发步步为营之65:解决ScrollView和ListView触摸事件onInterceptTouchEvent相互冲突问题
- 网络问题勘查
- 出差教训
- 出差教训
- iOS 下实际网络连接状态
- lintcode-easy-O(1) Check Power of 2
- hive窗口函数理解加实践
- lintcode-easy-Number of Islands