海滩上有一堆桃子(讲解和代码)

题目:

海滩上有一堆桃子,5只猴子来分。第1只猴子把这堆桃子平均分成5份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第2只猴子把剩下的桃子又平均分成5份,又多了一个,它同样把多的一个扔入海中,拿走了一份。第3、第4、第5只猴子都是这样做的,问海滩上原来最少有多少个桃子?

思路:
思路很简单,枚举法。
从1到大,逐一枚举,每一次要做的事就是检查这个桃子数是否符合题目给的要求(也就是让五只猴子逐一按照规则分配,直到能进行五次,那么第一次出现的就是我们要找的数)

代码:

def ff():x = 0  #枚举的桃子树while(True):x += 1 #逐一递增k = 0 #用来标志能完成几只猴子分配的任务m = x #用于不改变x的值,使用m完成下面的分配任务while(k<5): #当k=5时,表示已经进行了五只猴子分配,退出循环if(m%5==1 and m//5>0): #检查这个桃子树是否满足分五堆还剩一个,以及每一堆的个数是否大于m = (m//5)*4    #能满足上述条件则将剩下4堆的数量用于下个猴子分配k += 1   #满足一次加一else:    #不满足表示这个桃子树不能满足五个猴子完成分配,则提前退出循环breakif(k==5):  #当循环是因为达到了5次分配而结束的,则表示找到这个最小的桃子数print(x) #打印break    #并且最终退出循环
ff()    #调用函数

运行结果:

3121

海滩上有一堆桃子(讲解和代码)相关推荐

  1. java海滩上有一_海滩上有一堆桃子,五只猴子来分-海滩上有一堆桃子,五只猴子来分java实现-吾爱编程网...

    今天吾爱编程为大家分享一个java的经典案例:海滩上有一堆桃子,五只猴子来分,接下来吾爱编程为大家介绍一下海滩上有一堆桃子,五只猴子来分.第一只猴子把这堆桃子平均分为五份写法,有需要的小伙伴可以参考一 ...

  2. 海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走

    海滩上有一堆桃子,五只猴子来分.第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份.第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一 ...

  3. 海滩上有一堆桃子,五只猴子来分(C语言)

    海滩上有一堆桃子,五只猴子来分(C语言) 问题描述 问题分析 代码 结果 问题描述 海滩上有一堆桃子,五只猴子来分.第一只猴子把这堆桃子平均分为五份,多了一个,这只 猴子把多的一个扔入海中,拿走了一份 ...

  4. 41、海滩上有一堆桃子,五只猴子来分。

    题目:海滩上有一堆桃子,五只猴子来分.第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份.第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿 ...

  5. 海滩上有一堆桃子,五只猴子来分。(C语言实现)

    海滩上有一堆桃子,五只猴子来分.第一只猴子把这堆桃子平均分为五份,多了一个,这只 猴子把多的一个扔入海中,拿走了一份.第二只猴子把剩下的桃子又平均分成五份,又多了 一个,它同样把多的一个扔入海中,拿走 ...

  6. 海滩上有一堆桃子,五只猴子来分。 第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。 第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走

    海滩上有一堆桃子,五只猴子来分. 第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份. 第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走 ...

  7. 海滩上有一堆桃子,五只猴子来分

    .海滩上有一堆桃子,五只猴子来分.第一只猴子把这堆桃子凭据分为五份,          *  多了一个,这只猴子把多的一个扔入海中,拿走了一份.第二只猴子把剩下的          * 桃子又平均分成 ...

  8. java海滩上有一_五十道编程小题目 --- 41 海滩上有一堆桃子,五只猴子来分 java...

    [程序41] 题目:海滩上有一堆桃子,五只猴子来分.第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一 个扔入海中,拿走了一份.第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的 ...

  9. 猴子分桃的题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了 一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分 成五份,又多了一个,

    题目:海滩上有一堆桃子,五只猴子来分.第一只猴子把这堆桃子凭据分为五份,多了 一个,这只猴子把多的一个扔入海中,拿走了一份.第二只猴子把剩下的桃子又平均分 成五份,又多了一个,它同样把多的一个扔入海中 ...

最新文章

  1. Qt中文手册 之 QTableWidgetItem
  2. db2 linux 数据导出_linux db2 导出数据库
  3. 单片机开发工程师需要学哪些,单片机工作的基本条件
  4. 三十六、请求分页管理方式
  5. Linux系统资源管理 之 硬件信息
  6. h5课件制作_一个好的h5交互课件该怎么制作
  7. matlab参数识别,教程:matlab参数识别(包括微分方程和simulink)
  8. 第3章 Python的数据结构、函数和文件
  9. vue内检测是否有swiper_vue.js怎么用swiper
  10. Memcache持久性分布式数据MemcacheDB
  11. 明晚直播预告丨一则ORA-600案例分析
  12. visualstudio2019 的报表技术rdlc在windows10上出现乱码的问题解决方法
  13. 基本内置类型 声明与定义 static与entern const auto register volatile
  14. seo是什么,seo是什么职位缩写
  15. new UI-布局之LinearLayout(线性布局)详解
  16. 怎样用PS修改图片上的数字
  17. 【生活】年化收益率、七日年化收益率这些事
  18. golang 递归方式解析json串
  19. matlab 三维 作图 坐标轴_Matlab编辑三维图坐标的方法
  20. Python从网易云音乐、QQ 音乐、酷狗音乐等搜索和下载歌曲

热门文章

  1. 互融云|融资担保行业发展新要求:加快数字化转型 以增强服务实体经济
  2. 无线仪表变送器设备联网服务器,基于无线HART通信技术的仪表管理与诊断系统的设计.pdf...
  3. Axure8.0可用的授权码
  4. 数据分层详解ODS、DWD、DWM、DWS、ADS
  5. 关于学习JavaScript!
  6. 【DBN分类】基于matlab深度置信网络DBN变压器故障诊断【含Matlab源码 2284期】
  7. 区块链与社交媒体有着怎样的联系?
  8. STM32CubeMX生成STM32F072 USB 自定义HID Device
  9. wordpress大前端博客主题DUX7.1
  10. 怎么修改APP的服务器,安装app后怎么修改服务器地址