/*

M个苹果放在N个盘子里分法有:dp[M][N], 0 <= M,N <= 10

设dp(m,n) 为m个苹果,n个盘子的放法数目,则先对n作讨论,

当m

当m>=n:不同的放法可以分成两类:

1、有至少一个盘子空着,即相当于dp(m,n) = dp(m,n-1);

2、所有盘子都有苹果,相当于可以从每个盘子中拿掉一个苹果,不影响不同放法的数目,即dp(m,n) = dp(m-n,n).

而总的放苹果的放法数目等于两者的和,即 dp(m,n) =dp(m,n-1)+dp(m-n,n)

初始条件说明

当m=0,n=0时,没苹果,没盘子,定为0种放法。这个条件在计算的时候用不到。题设至少一个盘子一个苹果。

当m=0,n>0时,没苹果,有盘子,定为1种放法。这个有点抽象,考虑:dp[1][1]=dp[1][0]+dp[0][1]=0+1。

当m>0,n=0时,有苹果,没盘子,定为0种放法。

dp两条路,第一条n会逐渐减少,终会到达出口n=0;

第二条m会逐渐减少,因为n>m时,会计算dp(m,m) 所以终会到达出口m=0.

*/

#include

#if US_DP

int dp[11][11];

int main()

{

int m, n;

while (scanf("%d%d", &m, &n) != EOF) {

for (int i = 1; i <= m; ++i)

dp[i][0] = 0;

for (int j = 1; j <= n; ++j)

dp[0][j] = 1;

for (int i = 1; i <= m; ++i) {

for (int j = 1; j <= n; ++j) {

if (i >= j)

dp[i][j] = dp[i][j-1]+dp[i-j][j];

else

dp[i][j] = dp[i][i];

}

}

printf("%d\n", dp[m][n]);

}

return 0;

}

#else

int f(int m, int n)

{

if (m >= 0 && n == 0)

return 0;

else if (m == 0 && n > 0)

return 1;

else if (m >= n)

return f(m, n-1)+f(m-n, n);

else

return f(m, m);

}

int main()

{

int m, n;

while (scanf("%d%d", &m, &n) != EOF)

printf("%d\n", f(m, n));

}

#endif

用python解决放苹果问题_放苹果相关推荐

  1. 高德python解决租房项目费用_高德API+Python解决租房问题

    项目简介:编写Python脚本爬取某租房网站的房源信息,利用高德的 js API 在地图上标出房源地点,划出距离工作地点1小时内可到达的范围,附上公交路径规划功能查看不同路径的用时.项目由ekCit发 ...

  2. 苹果开发者_国外苹果企业开发者账户

    国外苹果企业开发者账户 PG123hs6 国外苹果企业开发者账户 即便审批完毕后也不一定就代表着发布取得成功,很有可能还会继续挨打回再次递交,比较严重的会由于反复的发布被拒而造成苹果者封.科技是内测对 ...

  3. python解决数学建模问题_荐面试问题:2018年全国大学生数学建模竞赛项目

    1. 赛题背景 2. RGV流程图 3. 面试问题 3.1 RGV和CNC是什么? RGV是轨道式自动引导车(Rail Guide Vehicle). CNC是计算机数控机床(Computer Num ...

  4. python分苹果问题_分苹果问题的C++和Python实现

    很好玩的一个问题.话说小明的苹果怎么可能一模一样? 显然这并不是重点.重点在于抽象这个问题的方法. 如果从M个苹果,拿出N个苹果,问有几种可能性,很明显这是典型的组合问题: 如果把M个苹果等分成N份. ...

  5. python解决换零钱问题_多种解法解决“零钱兑换”问题

    最近在LeetCode上刷算法题,准备秋招.刷了一些题之后,发现有些题非常棒,能够将多种知识点结合在一起.本文就以"零钱兑换"问题为例,展示同一道题的多种不同解法. 零钱兑换问题 ...

  6. python棋盘放米问题_棋盘堆米的难题怎么解决?

    原标题:棋盘堆米的难题怎么解决? 国外有个故事,一个人和国王打赌.如果国王输了就给他米.但是他要的你看上去很少,实则算起来确实非常多,甚至一个国家的米都不够.国王为了用人信守承诺.国王为了应向所有人显 ...

  7. gif演示python循环_用Python将动态GIF图片倒放播放的方法

    这次让我们一个用 Python 做一个小工具:将动态 GIF 图片倒序播放! GIF(Graphics Interchange Format) 是一种可以用来呈现动画效果的图片格式,原理就是保存很多帧 ...

  8. python 定义变量_用python解决动态的定义变量名(并给其赋值方法:大数据处理)...

    前言: 今天为大家带来的内容是:用python解决动态的定义变量名(并给其赋值方法:大数据处理)具有很好的参考价值,希望对大家有所帮助.喜欢本文内容的记得点赞转发收藏不迷路哦!!! 最近消费kafka ...

  9. python猴子吃桃问题_用Python解决猴子吃桃问题

    猴子吃桃问题是数学中的一道经典问题,学习过相关数学知识的人固然已经知道该如何解答了,但还没有学到这部分知识的孩子该怎么办呢?其实接触了编程的孩子就可以用编程知识来解决这个问题了,比如Python,下面 ...

  10. P、V操作与c++代码实现爸爸放苹果,妈妈放桔子,两个儿子专吃盘子中桔子,两个女儿专吃盘子中苹果问题

    二.吃水果综合设计 桌子上有一只盘子,最多可容纳两个水果,每次只能放入或取出一个水果.爸爸专向盘子放苹果(apple),妈妈专向盘子中放桔子(orange):两个儿子专等吃盘子中的桔子,两个女儿专等吃 ...

最新文章

  1. ApplicationContextAware 接口
  2. 算法---------数组-----------两数相加
  3. jQuery如何实现表单的自动提示
  4. 【AI研究院】360无死角认识一下女神的线上美容院-“美图秀秀”
  5. 别再说PHP已死了,它活得好着呢
  6. 「LibreOJ Round #6」花火
  7. Quartz(任务调度)- job串行避免死锁
  8. WebApi个人理解概要
  9. CSS 盒子模型(Box Model)
  10. 在pycharm运行正常,在命令行窗口出现引包错误
  11. 基于LVDS的高速自同步串行传输系统的研究
  12. 内核sk_buff工作线程总结
  13. 简单的木马制作并且运用
  14. LTE系统中的OFDM技术
  15. 计算机考证一级考可以带书吗
  16. 2021-09-14TL431与LM317的区别
  17. 【云原生】还不会使用linux?快看这里,在window快速安装centos系统
  18. HEAAN源码(二)
  19. 利用小工具解除pdf的编辑保护
  20. ASP.Net中常见的文件类型

热门文章

  1. “动力电池第三极“中创新航IPO,能否“复刻“宁德时代?
  2. octobercms mysql_如何在Ubuntu 16.04 LTS上安装OctoberCMS
  3. 一键激活windows系统与office(绿色无捆绑装机员激活工具)
  4. 如何修复硬盘的分区表
  5. 浏览器能上网,qq,百度云不能上
  6. ARM嵌入式核心板介绍
  7. 远程桌面不能复制粘贴解决办法
  8. js中的点击事件(click)的实现方式
  9. 什么是Automata(I): Web 3.0的最后一块拼图
  10. 如何用计算机弹奏纸短情长,纸短情长计算器谱