一、问题提出
问题:把m个苹果放入n个盘子中,允许有的盘子为空,共有多少种方法?
注:
5,1,1和1 5 1属同一种方法
m,n均小于10
二、算法分析
设f(m,n) 为m个苹果,n个盘子的放法数目,则先对n作讨论,
当n>m:必定有n-m个盘子永远空着,去掉它们对摆放苹果方法数目不产生影响。即if(n>m) f(m,n) = f(m,m)
当n<=m:不同的放法可以分成两类:
有至少一个盘子空着,即相当于f(m,n) = f(m,n-1);
所有盘子都有苹果,相当于可以从每个盘子中拿掉一个苹果,不影响不同放法的数目,即f(m,n) = f(m-n,n).而总的放苹果的放法数目等于两者的和,即 f(m,n) =f(m,n-1)+f(m-n,n)
递归出口条件说明:
当n=1时,所有苹果都必须放在一个盘子里,所以返回1;
当m==0(没有苹果可放)时,定义为1种放法;
三、程序设计
int appledivide(m,n);
int main()
{
int m,n;
printf("请输入苹果和盘子个数(均小于10): ");
scanf("%d%d",&m,&n);
if(m<10&&n<10)
{
int result = appledivide(m,n);
printf("将%d苹果,放入%d个盘子,共有%d中方法",m,n,result);
}
else
printf("苹果或盘子个数应小于10");
return 0;
}
int appledivide(m,n)
{ // 如果碟子只有1个,无论苹果有多少个都只有一种放法
if(m==0||n==1)
{
return 1;
}
//如果碟子的个数大于苹果的个数
if(n>m)
{
return appledivide(m,m);
}
else
{
return appledivide(m,n-1) + appledivide(m-n,n);
}
}
责任编辑:haq
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
C语言
+关注
关注
180文章
7537浏览量
130160 -
编程
+关注
关注
88文章
3443浏览量
92529
原文标题:C语言习题:苹果装盘问题!用递归如何求解?
文章出处:【微信号:cyuyanxuexi,微信公众号:C语言编程学习基地】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
隔离、iCoupler技术和iCoupler产品常见问题解答
电子发烧友网站提供《隔离、iCoupler技术和iCoupler产品常见问题解答.pdf》资料免费下载
发表于 11-22 10:36
•0次下载
Brocade G610/G620/G630交换机常见问题解答
电子发烧友网站提供《Brocade G610/G620/G630交换机常见问题解答.pdf》资料免费下载
发表于 08-29 15:08
•0次下载
大规模集成电路MegaRAID FastPath软件常见问题解答
电子发烧友网站提供《大规模集成电路MegaRAID FastPath软件常见问题解答.pdf》资料免费下载
发表于 08-23 09:41
•0次下载
大规模集成电路MegaRAID SafeStore软件常见问题解答
电子发烧友网站提供《大规模集成电路MegaRAID SafeStore软件常见问题解答.pdf》资料免费下载
发表于 08-22 14:40
•0次下载
Arm SystemReady和SystemReady预硅启用的常见问题解答
本指南提供了有关Arm SystemReady计划和SystemReady预硅启用的常见问题的答案。
信息分为以下几个部分:
•SystemReady一般常见问题解答回答了有关SystemReady
发表于 08-08 06:21
EMC工程问题解答(八)
赛盛技术从成立至今收到不少企业和学员关于电磁兼容问题咨询与交流,其中金牌线上课程《EMC实战特训营》收到学员2000+个的提问,赛盛专家团队给予的相关问题回复。以下是整理部分EMC问题解答,供大家
PI7C9X130 PCI快速转PCI可逆网桥常见问题解答
电子发烧友网站提供《PI7C9X130 PCI快速转PCI可逆网桥常见问题解答.pdf》资料免费下载
发表于 07-26 15:56
•1次下载
PI7C9X110 PCI快速转PCI可逆网桥常见问题解答
电子发烧友网站提供《PI7C9X110 PCI快速转PCI可逆网桥常见问题解答.pdf》资料免费下载
发表于 07-25 18:25
•1次下载
PI7C9X111 PCI Express到PCI可逆网桥常见问题解答
电子发烧友网站提供《PI7C9X111 PCI Express到PCI可逆网桥常见问题解答.pdf》资料免费下载
发表于 07-25 18:24
•0次下载
评论