1. 问题

M个同样的苹果放N个同样的盘子,允许有盘子空着, 问有多少种放法?

2.分析

令f(m,n)表示m个苹果放到n个盘子里有多少种放法,下面分类讨论:

  1. m<n时,至少有n-m个盘子空着(这些空盘子并不影响最后的结果,因为每种方法都带有着些空盘子)。只考虑m个苹果放m个盘子   f(m,n)=f(m,m)
  2. m>n时,按是否有空盘子 分2种情况:

a.假设至少一个盘子空着,相当于f(m,n)=f(m,n-1)
           b.所有的盘子都有苹果,假设每个盘子可以先放一个,问题就变成:m-n个苹果放到n个盘子,即f(m,n)=f(m-n,n)

总的放法为二者之和, f(m,n)=f(m,n-1)+f(m-n,n)

3. 临界条件

n=1时,所有苹果都放在同一个盘子里   f(m,n)=1
          m=0时,没有苹果                    f(m,n)=1

3.code

用递归实现分治

public int fun(int m,int n){if(m<=1||n==1)return 1;else if ( n == 0)return 0;else if(n>m)return fun(m,n-1);return fun(m-n,n) + fun(m,n-1);}

M个苹果放在N个盘子里,有多少种不同的放法相关推荐

  1. m个苹果放在n个筐里,每个筐至少一个,所有的筐都一样,有多少种放法

    package com.study; import java.io.BufferedReader; import java.io.IOException; import java.io.InputSt ...

  2. 算法题放苹果:把M个相同的苹果放到N个完全相同的盘子里,有多少种放法?

    文章目录 题目描述 题解 思路1 暴力递归 思路2:缓存思想--动态规划来优化暴力递归 题目描述 链接:点我做题 题解 思路1 暴力递归   我们利用递归来解决这个问题,不妨这样思考,假设apples ...

  3. 【放苹果】m个苹果放到n个盘子中

    m个相同的苹果,放在n个相同的盘子中,由于相同,使用排列组合的方法不好处理.这里选用递归调用的方式解决问题: (8个苹果,放在3个盘子里)= (8个苹果,放在2个盘子) +(5个苹果,放在2个盘子[每 ...

  4. POJ 1664 求m个苹果放入n个盘子的不同放法数目 递归 分类讨论

    通过分类讨论,将规模较大的问题转换成规模较小的相同问题,学会"降维",将索引值不断降小,就可以递归求解 设f(m,n)为把m个苹果放到n个盘子中的方法数,m>=0,n> ...

  5. 第T题 详解放苹果(递归) =========== 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。

    把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法. Input 第一行是测试数据的数目t(0 <= t < ...

  6. M 个同样的苹果放在N 个同样的盘子里,允许有的盘子空着不放的算法

    把 M 个同样的苹果放在N 个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K 表示)注意:5,1,1 和1,5,1 是同一种分法 eg:输入7,3 输出 8 思路: 本题我们采用递 ...

  7. (多线程同步练习)桌子上有一只盘子,每次只能放一只水果,爸爸专向盘子中放苹果,妈妈专向盘子中放橘子,一个儿子专等吃盘子里的橘子,一个女儿专等吃盘子里的苹果。写出能使爸爸、妈妈、儿子、女儿正确同步工作的

    这是操作系统的一道课堂练习题 题目完整描述: 桌子上有一只盘子,每次只能放一只水果,爸爸专向盘子中放苹果,妈妈专向盘子中放橘子,一个儿子专等吃盘子里的橘子,一个女儿专等吃盘子里的苹果.写出能使爸爸.妈 ...

  8. 苹果电脑怎么删除移动硬盘里的文件,苹果电脑无法删除移动硬盘文件

    苹果电脑怎么删除移动硬盘里的文件?也不能进行复制.编辑.移动等操作,只能够打开文件进行查阅,是因为移动硬盘是NTFS格式的,这种格式在Mac电脑上只允许被查阅. Mac为何不能正常读写NTFS移动硬盘 ...

  9. 操作系统同步问题:有一个没有限量的大盘子,爸爸只往里面放苹果,妈妈只往里面放桔子,儿子只拿苹果吃,女儿只拿桔子吃,请写出能描述4个人行为的同步方案

    有一个没有限量的大盘子,爸爸只往里面放苹果,妈妈只往里面放桔子,儿子只拿苹果吃,女儿只拿桔子吃,请写出能描述4个人行为的同步方案. Program father: begin: repeat:prod ...

  10. 苹果Mac修改图标“偷梁换柱”的一种简单方法

    初接触苹果Mac OS系统又爱好整洁漂亮的新手们,都有这样的感觉:放在硬盘或文稿里的文件夹,千篇一律的蓝框框,确实不爽.想改吧,用惯了Windows系统一时又不知道从何下手,现在我告诉大家一个偷梁换柱 ...

最新文章

  1. 数据库安装时挂起问题
  2. 如何定义研发KPI:以团队速度为标准
  3. 对异步脉冲信号的处理——不归0翻转电路
  4. unrecognized selector sent to instanceAuto property synthesis will not synthesize property
  5. LeetCode动态规划 使用最小花费爬楼梯
  6. HBase架构设计及原理分析
  7. 数据结构与算法——栈、队列、堆汇总整理
  8. sql 日期间隔排查双休_免费教程《图解SQL面试题》
  9. ArcGIS学习总结(16)——反距离权重法插值及批处理(IDW)
  10. Unity编辑器:自定义编辑器样式——GUIStyle
  11. AI新生 人类最后一个大问题 破解人机共存密码 Human Compatible Stuart Russell
  12. 小米笔记本Pro 黑苹果10.15.2记录 不需要焊接,完美支持airdrop、接力、随航
  13. MTK平台Camera图片的Exif信息
  14. 电脑ping,怎么ping网速,详细教您ping网络的方法
  15. java illegal key size,Java 解密错误InvalidKeyException: Illegal key size解决方法
  16. Spring Cloud Alibaba阿里面试题
  17. 测试用的美国信用卡账号
  18. epub解压的多个html制作单个html
  19. 南怀瑾老师:人最大的毛病就是不敢承认“心即是佛、心即是道
  20. 俺常去(用)滴地方~

热门文章

  1. 如何利用Xshell远程登陆主机后使用代理服务器上网
  2. 一个空间多个php网站,一个空间多个域名多个网站的办法汇总
  3. 【行车路径规划】百度地图API,行车路径规划 起始点+途经点
  4. 【蓝桥杯】:奇怪的分式
  5. 计算机组成原理无符号数除法,计算机组成原理课设 不恢复余数的无符号阵列除法器.doc...
  6. linux卸载小企鹅输入法,Linux(FC)小企鹅输入法的安装
  7. 淘客菜鸟百度贴吧怎么发帖子操作淘宝客
  8. win10怎么一键释放运行内存
  9. 推荐几款优秀的开源博客系统
  10. unll是什么意思_javascript中null是什么意思?