计算组合数 (sdut oj)
来源:互联网 发布:淘宝如何申请中国制造 编辑:程序博客网 时间:2024/06/07 10:51
计算组合数
Time Limit: 1000MS Memory Limit: 32768KB
Problem Description
计算组合数。C(n,m),表示从n个数中选择m个的组合数。计算公式如下:
若:m=0,C(n,m)=1
否则, 若 n=1,C(n,m)=1
否则,若m=n,C(n,m)=1
否则 C(n,m) = C(n-1,m-1) + C(n-1,m).
Input
第一行是正整数N,表示有N组要求的组合数。接下来N行,每行两个整数n,m (0 <= m <= n <= 20)。
Output
输出N行。每行输出一个整数表示C(n,m)。Example Input
32 13 24 0
Example Output
231
Hint
Author
参考代码:
#include<stdio.h>int c(int n,int m){ if( m == 0 || n == 1 || m == n ) return 1; else return c(n-1,m)+c(n-1,m-1);}int main(){ int t; int n,m; scanf("%d",&t); while(t--) { scanf("%d%d",&n,&m); printf("%d\n",c(n,m)); } return 0;}
第一行是正整数N,表示有N组要求的组合数。接下来N行,每行两个整数n,m (0 <= m <= n <= 20)。
Output
输出N行。每行输出一个整数表示C(n,m)。
Example Input
32 13 24 0
Example Output
231
Hint
Author
参考代码:
#include<stdio.h>int c(int n,int m){ if( m == 0 || n == 1 || m == n ) return 1; else return c(n-1,m)+c(n-1,m-1);}int main(){ int t; int n,m; scanf("%d",&t); while(t--) { scanf("%d%d",&n,&m); printf("%d\n",c(n,m)); } return 0;}
0 0
- 计算组合数 (sdut oj)
- 计算组合数 (sdut oj)
- 计算组合数C(n,m)(SDUT 2241)
- 简单计算 (sdut oj)
- 鞍点计算 (sdut oj)
- SDUT 组合数
- 优越数 (sdut oj)
- 平方数 (sdut oj)
- 水仙花数 (sdut oj)
- 计算球体积 (sdut oj)
- 求实数绝对值 (sdut oj)
- 删数问题 (sdut oj)
- 南阳OJ 组合数
- SDUT 2241-计算组合数C(n,m)(递推)
- 第X大的数 (sdut oj)
- 第X大的数 (sdut oj)
- 组合数计算技巧
- 计算组合数
- HDU3339
- Apache kafka 工作原理介绍
- 对所做的事情的理解越深,你就会做的越好
- Java.API基础知识总结
- HOJ 1867 经理的烦恼
- 计算组合数 (sdut oj)
- RestTemplate访问Rest服务总结
- CentOS6下编译、安装Redis源码
- Windows下Pycharm使用Tensorflow、Theano和Keras的方法
- 等价二叉树
- CentOS 7 安装 MySQL
- JS脚本编写保存Cookie
- IMWeb训练营作业--VUE练习,ToDoList
- 理解java反射