分梨
来源:互联网 发布:远程网络教育考试 编辑:程序博客网 时间:2024/04/29 18:09
题目描述
输入
接下来t行,每行输入两个整数M和N,代表有M个梨和N个盘子。(M和N均大于等于0)
输出
样例输入
17 3
样例输出
8
题意概括:
把m个梨放到n个盘子中,盘子可以空着,但是不能全空,问有多少种放法?
解题思路:
盘子可以不空也可以空一部分,如果一个不空,相当于每个盘子里至少有一个梨,也就是说只需把剩下的(m-n)个梨分到n个盘子里即可c(m,n)=c(m-n,n);如果有a个空盘,这相当于把m个梨放到(n-a)个盘子中c(m,n)=c(m,n-1)。
如果盘子比梨多,则相当于把m个梨放到m个盘子中,c(m,n)=c(m,m).
代码:
#include<stdio.h>
int c(int x,int y);
int main()
{
inti,t,j,k,x,y,l;
while(scanf("%d",&t)!=EOF)
{
while(t--)
{
scanf("%d%d",&x,&y);
printf("%d\n",c(x,y));
}
}
return0;
}
int c(int x,int y)
{
if(y==1||x==0)
return1;
if(x<y)
returnc(x,x);
else
returnc(x,y-1)+c(x-y,y);
}
- 分梨
- 分梨
- 分梨
- 练习题 G: 分梨
- 分
- 分
- 分
- 分
- 专家分5分
- 分库 分表
- 1083 -- 分!分!分! 学生的命根
- 1259: 分!分!分! 学生的命根
- 分目
- 分班
- 分分分
- 接分
- 分粥
- 赚分
- Ubuntu16 安装git
- RCP导出多平台包
- JavaSE_笔试题_简答题2
- css的导入方式以及优先级
- 输出N个不同字母的全排列
- 分梨
- ffmpeg实验
- php初学
- E: 软件包 astah-professional 需要重新安装,但是我无法找到相应的安装文件。
- Java接口中的成员变量为什么必须声明为public static final?
- DFS练习一---HDU 1342
- Chrome 开发插件
- libjpeg(2)
- 排列棋子