题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?

算法分析://初始桃子数为sum

第一次:sum=5*x1+1

第二次:4*x1=5*x2+1

第三次:4*x2=5*x3+1

第四次:4*x3=5*x4+1

第五次:4*x4=5*x5+1

第五次分配结束:剩下4*x5个桃子,而x5>=1,故i=4*x5>=4 。每次向上推j=(i/4)*5+1;i=j;每次上推结束后判断j%4是否等于0,如果为0则继续上推,否则更新i,直到找到能够完成五次上推的整数i,最后可以得到最初的桃子数。

C语言程序:

#include

int main(int agrc, char*agrv[])

{

int i, m, j, k, count;

for (i = ; i

/*i为5个猴子分配桃子后最后剩余的桃子,必须为4的倍数,然后以此为基础,

向上推5次,如果刚好能够推到第五次,则此剩余的桃子数i是满足条件的,否则换一个

剩余的桃子数,直到找到符合条件的最小剩余桃子数*/

{

count = ;

m = i;

for (k = ; k

{

j = i / * + ;

i = j;

if (j % == )

count++;

else

break;

}

i = m;

if (count == )

{

printf("原来最少的桃子数为:%d\n", j);

break;

}

}

system("pause");

return ;

}

Python经典算法-猴子吃桃-思路分析

问题: 猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾就多吃了一个.第二天早上又将剩下的桃子吃了一半,还是不过瘾又多吃了一个.以后每天都吃前一天剩下的一半再加一个.到第10天刚好剩一个.问猴子第一天 ...

C语言经典算法 - 多维矩阵转一维矩阵的代码

下边内容内容是关于C语言经典算法 - 多维矩阵转一维矩阵的内容,应该能对码农也有好处. #include #include int mai ...

C语言经典算法100例

[程序1] 题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. ...

C语言经典算法100例(二)

11.判断某一年是否是闰年. //判断某一年份是否是闰年 int IsLeapYear(int year) { return (year % 400 == 0 || (year % 4 == 0) & ...

Java例题_17 猴子偷桃问题

1 /*17 [程序 17 猴子吃桃问题] 2 题目:猴子吃桃问题 3 猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 4 第二天早上又将剩下的桃子吃掉一半,又多吃了一个. 5 以后每天 ...

C语言经典算法100例(一)

C语言中有有许多经典的算法,这些算法都是许多人的智慧结晶,也是编程中常用的算法,这里面包含了众多算法思想,掌握这些算法,对于学习更高级的.更难的算法都会有很大的帮助,会为自己的算法学习打下坚实的基础. ...

c语言经典算法——查找一个整数数组中第二大数

题目: 实现一个函数,查找一个整数数组中第二大数. 算法思想: 设置两个变量max1和max2,用来保存最大数和第二大数,然后将数组剩余的数依次与这两个数比较,如果这个数a比max1大,则先将max1 ...

c语言经典算法—求0—7 所能组成的奇数个数

题目:求0—7 所能组成的奇数个数. 算法思想:这个问题其实是一个排列组合的问题,设这个数为sun=a1a2a3a4a5a6a7a8,a1-a8表示这个数的某位的数值,当一个数的最后一位为奇数时,那么 ...

C语言经典算法100例(三)

1.河内之塔 说明河内之塔(Towers of Hanoi)是法国人M.Claus(Lucas)于1883年从泰国带至法国的,河内为越战时北越的首都,即现在的胡志明市:1883年法国数学家 Edoua ...

随机推荐

Android消息传递之基于RxJava实现一个EventBus - RxBus

前言: 上篇文章学习了Android事件总线管理开源框架EventBus,EventBus的出现大大降低了开发成本以及开发难度,今天我们就利用目前大红大紫的RxJava来实现一下类似EventBus事 ...

Nginx 常用伪静态配置

1. /a/b?c=d => index.php?_a=a&_m=b&c=d 2. /xxx/detail-yyy.html => index.php?_a=xxx&amp ...

PHP 文件上传的综合实例

1.upload.php

《Java数据结构与算法》笔记-CH3简单排序

class ArrayBub { private long[] arr; private int nElement; public ArrayBub(int size) { arr = new lon ...

ubuntu 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)

在用sudo apt-get install kmymoney2安装软件kmymoney2时,由于速度太慢,想换个软件源,直接关闭了终端,apt-get但进程没有结束,结果终端提示:"E: ...

python基础学习笔记6--异常

异常 1.什么是异常?  python用异常对象来表示( exception object)异常情况.如果异常没有被处理或扑捉,程序就会所谓的回溯(TraceBack,一种错误信息)而终止执行: 2. ...

monkey日志分析

Monkey测试的og分析,我们可以通过几个关键词来判断测试是否通过.1)Monkey finished打开LOG,查看log的最下端,是否有类似以下字段:## Network stats: elap ...

Python虚拟环境笔记

虚拟环境 为什么需要虚拟环境: 到目前位置,我们所有的第三方包安装都是直接通过pip install xx的方式进行安装的,这样安装会将那个包安装到你的系统级的Python环境中.但是这样有一个问题, ...

Python startswith() 函数 判断字符串开头

Python startswith() 函数 判断字符串开头 函数:startswith() 作用:判断字符串是否以指定字符或子字符串开头 一.函数说明语法:string.startswith(str ...

猴子偷桃c语言编程软件,c语言经典算法——猴子偷桃问题相关推荐

  1. verilog能直接用c语言编程软件,verilog语言编程

    求一个用Verilog语言编写的程序要能获取系统当前时间并且用数码管(四位数码管)输出,非常感谢 $time. 使用举例 $display("Now the time is %t" ...

  2. g开头的C语言编程软件,C语言函数大全(g开头)

    函数名: gcvt 功 能: 把浮点数转换成字符串 用 法: char *gcvt(double value, int ndigit, char *buf); 程序例: #include #inclu ...

  3. 西门子c语言编程软件,C语言-工业支持中心-西门子中国

    相似 看帮助就可以的 如果有精力 最好看看 C C++ vb Java 这些会了 那你在工控这行业 就可以如鱼得水 本回答有1位钻石用户推荐 回答者: CoolCool的猪 - 高级顾问&nb ...

  4. 一维数组求平均值c语言编程软件,c语言编程:用数组名作函数参数,编写一个对一维数组求平均值的函数,并在主函数中调用它...

    #includeincludeint main(){void sort1(char*p1);void print(char*p2);static char*name[]={"zhangwww ...

  5. c7中取4c语言编程软件,c语言编程软件_C语言编程

    最佳答案 [1]C1_xxx.c #include int sum(int a, int b); int mul(int a, int b); int main(void) { int a, b; p ...

  6. 微软c语言编译软件学生版下载,C语言下载_C语言官方下载【C语言编程软件】-太平洋下载中心...

    微软官方 Visual C++ 2013 (x86.x64)位运行库 Visual C++ Redistributable Packages 安装运行时组件,C语言下载版的组件是在未安装 Visual ...

  7. 打开c语言运行不了_手机上有哪些不错的c语言编程软件?

    世界那么大,谢谢你来看我!!关注我你就是个网络.电脑.手机小达人 手机上编程C语言的软件其实非常多,下面我介绍2个不错的软件,分别是C语言编译器和C++编译器,这2个软件都可以在手机上直接编译运行C语 ...

  8. Python:Python语言编程软件安装的几大姿势之详细攻略

    Python:Python语言编程软件安装的几大姿势之详细攻略 目录 Python软件安装的几大姿势 Python原生安装 Python3.6安装 Python流行安装--完美搭配Pycharm

  9. 初学者c语言编程软件_C初学者手册:仅需几个小时即可学习C编程语言基础知识

    初学者c语言编程软件 This C Beginner's Handbook follows the 80/20 rule. You'll learn 80% of the C programming ...

最新文章

  1. 制作一本《First Love, Last Rites》之二
  2. (十四)json、pickle与shelve模块
  3. 15 —— npm —— package.json 与 package-lock.json 的作用
  4. 螺杆真空泵安装流程图_优尼捷首推干式螺杆真空系统,应用于工业真空领域
  5. 永州计算机应用等级,5月永州计算机应用能力考试报名
  6. SpringBoot启动o.s.b.d.LoggingFailure… 错误解决方法
  7. 关于Libra的6个核心问题及其监管原则
  8. 离线中技术方案的场景
  9. 华为云计算IE面试笔记-名词解释
  10. 开源 免费 java CMS - FreeCMS1.5-职位管理
  11. 数据的类型:分类数据、顺序数据、数值型数据
  12. 腾讯阿里面试题【图文详解】:25匹马5赛道选前三,最少要跑几次?赛几场?
  13. eclipse修改自定义皮肤
  14. 成功者的13个良好习惯
  15. Alexa, Stop Spying on Me!“: Speech Privacy Protection Against Voice Assistants
  16. 拓展KubeVela模块,看addon如何助力开放生态
  17. 地下通信管道的管孔都快占满了,新增光缆怎么布放?
  18. 艰难的抉择,阿里“小前台、大中台”的解读
  19. org.apache.zookeeper.server.quorum.QuorumPeerConfig$ConfigException: Error processing
  20. CentOS版本的Linux的安装

热门文章

  1. OpenJudge_P8207 和为给定数
  2. 使用Nightwatch进行E2E测试
  3. eve-ng nxosv9k启动问题
  4. BMS专题之BMS测试
  5. 每日一题(79) - 求数组中最长递增子序列
  6. sql 模糊查询传递参数
  7. 电动车动力性计算MATLAB程序,一种基于MATLAB的电动汽车经济性计算的模拟仿真方法与流程...
  8. 计算机金融考研学校排名,金融学专业考研最好考10大高校排行
  9. 吴恩达——机器学习(学习率)
  10. 英特尔CEO因职场绯闻突然辞职,CPU巨头遇转型之殇