把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?
来源:互联网 发布:黑岩阅读软件 编辑:程序博客网 时间:2024/05/23 19:10
题目:把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。输入描述第一行是测试数据输出描述对输入的每组数据M和N,用一行输出相应的K。输入例子17 3输出例子8
解题思路:
将这8组数分成2组第一组,可以发现最后一个数总是为0,其实可以理解成这一组数与m = 7,n = 2也是相等的7 0 06 1 05 2 04 3 0第二组,如果将每一个数都减1,可以发现,这组数的个数与m = 4,n = 3相等5 1 14 2 13 3 13 2 1
def apple_divide(m,n): if m == 0 or n == 1 : #如果,碟子只有1个,无论苹果有多少个都只有一种放法 return 1 if n > m : #如果,碟子的个数大于苹果的个数 return apple_divide(m,m) else : return apple_divide(m,n-1) + apple_divide(m-n,n)if __name__=='__main__' : result = apple_divide(7,3) print(result)
阅读全文
0 0
- 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?
- 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?
- 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。
- 把n个同样的苹果放在m个同样的盘子里
- 把M个同样的苹果放在N个同样的盘子里
- poj 1664 放苹果 将m个相同的苹果放进n个相同的盘子中,盘子允许空,有多少种方法
- C/C++编程题1-放苹果,将m个相同的苹果放进n个相同的盘子中,盘子允许空,有多少种方法
- 转:poj 1664 放苹果 将m个相同的苹果放进n个相同的盘子中,盘子允许空,有多少种方法
- 将m个相同的苹果放进n个相同的盘子中,盘子允许空,有多少种方法
- 【C++】m个苹果放在N个盘子里
- 算法分析——N个苹果放在N个盘子里的问题
- POJ 1664 求m个苹果放入n个盘子的不同放法数目 递归 分类讨论
- 算法小题:m个相同的苹果,放在n个相同的盘子中,求有多少种结果
- (11)分苹果问题:将m个相同的苹果放到n个相同的盘子中,多少钟分法?
- M个苹果放在N个盘子
- m个苹果放在n个盘子里面有多少种放法?(动态规划)
- 将m个苹果放入n个盘子的问题
- m个相同苹果放的n个相同盘子中的算法
- HDU 1027 Ignatius and the Princess II(全排列next_permutation函数)
- 关于java 正则表达式 与 fastjson的兼容性问题
- Spring使用JdbcTemplate实现对数据库操作
- 【Java进阶-Java动态代理与AOP】05 分析InvocationHandler对象的运行原理
- java学习网站
- 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?
- Java笔试选择题要点总结
- 视差特效实现思路
- 作业
- caffe学习(七):使用py-faster-rcnn来训练voc2007数据集(Ubuntu)
- Observer Metodo:onNext, onCompleted, and onError
- mark
- HDU-2873 Bomb Game
- mapreduce中分割字符串