1 概述

猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个,
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃前一天剩下的一半零一个。
到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘多少个桃子?

2 分析

2.1 逆序分析(简单)

第十天桃子数量1个;day = 1
第九天桃子数量为第十天桃子数量加1乘以2;day = (day+1)*2
第八天桃子数量为第九天桃子数量加1乘以2;day = (day+1)*2
.
.
.
第一天桃子数量为第二天桃子数量加1乘以2;day = (day+1)*2
那么循环十次,答案就出来了!

// 猴子吃桃子问题
#include <stdio.h>int main(){int i=1,day=1;while(i<10){day = 2*(day+1);  // 猴子第一天1个,第二天2*(1 +1)个,第三天2(2*(1+1) + 1) i++;  }printf("猴子一共摘了%d个桃子!", day);return 0;
}
2.2 顺序分析

题目分析:
第一天的桃子数量为第二天的桃子数量加1然后乘以2;
第二天的桃子数量为第三天的桃子数量加1然后乘以2;
第三天的桃子数量为第四天的桃子数量加1然后乘以2;
.
.
.
第十天桃子的数量已知为1个,便可以倒推第一天桃子的数量。

#include <stdio.h>
int sumPeach(int day)
{if (day == 10)return 1;elsereturn 2 * (sumPeach(day + 1) + 1); // 后一天的数量加1乘以2
}
int main()
{int sum;sum=sumPeach(1);printf("桃子总数量为:%d\n",sum);
}

猴子吃桃问题——C语言相关推荐

  1. 猴子吃桃问题c语言两种实现形式:传统方式和通过递归函数的形式实现,简单易懂

    #include<stdio.h>//标准的输入输出流 #include<stdlib.h>//system("pause")要用 int func1(in ...

  2. 猴子吃桃问题 C语言用递归实现

    问题:有一只猴子第一天摘下了若干个桃子,当即吃掉了一半,觉得不过瘾又多吃了一个: 第二天又将剩下的桃子吃掉了一半,还不过瘾又多吃了一个:按照这个吃法,每天都吃掉前一天剩下的一半又多一个. 到了第十天, ...

  3. 猴子吃桃(C语言实现)

    [题目描述] 猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个.第二天早上又将第一天剩下的桃子吃掉一半,有多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第 n 天早上想再吃时, ...

  4. 猴子吃桃问题c语言链表,数据结构课程设计--猴子吃桃子问题.doc

    Data organization curriculm project 数据结构课程设计 设计题目: 猴子吃桃子问题 专业班级: 通信工程0804班 学生学号: 0909082421 学生姓名: 王 ...

  5. OJ1054: 猴子吃桃(C语言)

    题目描述 悟空第一天摘下桃子若干,当即吃掉一半,还不过瘾,又多吃一个,第二天又将剩下的桃子吃掉一半多一个,以后每天吃掉前一天剩下的一半多一个,到第n天准备吃的时候只剩下一个桃子.聪明的你,请帮悟空算一 ...

  6. 猴子吃桃问题(C语言)

    一只猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个:第二天早上又将剩下的桃子吃掉一半,又多吃了一个.以后每天早上都吃了前一天剩下的一半加一个.到第N天早上想再吃时,见只剩下一个桃子了. ...

  7. 电子协会 C语言 3级 50 、猴子吃桃

    2.1基本算法之枚举 7217:猴子吃桃 OpenJudge - 7217:猴子吃桃 海滩上有一堆桃子,N 只猴子来分.第一只猴子把这堆桃子平均分为 N 份,多了一 个,这只猴子把多的一个扔入海中,拿 ...

  8. 编程笔试(解析及代码实现):猴子吃桃。猴子第一天吃了若干个桃子,当即吃了一半,还不解馋,又多吃了一个…的C++、Java、Python、C#等语言代码实现

    编程笔试(解析及代码实现):猴子吃桃.猴子第一天吃了若干个桃子,当即吃了一半,还不解馋,又多吃了一个. 第二天早上又将剩下的桃子吃了一半,还是不过瘾,又多吃了一个.以后每天都吃前一天剩下的一半再加一个 ...

  9. C语言试题六十五之请编写函数实现猴子吃桃问题

    1. 题目 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个.第二天早上又将第一天剩下的桃子吃掉一半,有多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第 10 天 ...

最新文章

  1. python可以干嘛用-Python可以被用来做哪些神奇好玩的事情
  2. java中正则表达式函数_java正则表达式PHP中的正则表达式函数介绍
  3. 【问链-链改进行时】 第二课 链改的技术架构选择
  4. codeigniter在nginx安装配置及URL重写
  5. 机器学习(十六)——隐式狄利克雷划分
  6. python怎么打开程序管理器_Python 进程管理工具 Supervisor 使用教程
  7. myeclipse连接mysql怎么调用_myeclipse连接mysql数据库详细步骤
  8. gstreamer插件用不了,及黑名单Blacklist的解决办法
  9. Luogu3444:[POI2006]ORK-Ploughing
  10. 【Android】ListView刷新、加载
  11. linux虚拟实验室关闭了,Linux在线虚拟云实验室,提升RHCE考试通过率
  12. Leetcode 853 车队
  13. 谁发明了区块链?谁是中本聪?
  14. 今日分享-自定义返回按钮(与系统按钮位置一致)
  15. 力扣周赛310场题解
  16. 50个CSS编辑工具
  17. 华为服务器1u系列,1u服务器
  18. 中小项目敏捷实践之五(关于单元测试)
  19. 【SE】Week2 : 个人博客作业
  20. ASP.NET - 查询邮件及邮件内容

热门文章

  1. vue 打包优化,解决包大下载慢
  2. 前端学习之路之SPA(单页应用)设计原理
  3. 2018ICPC南京 Problem M. Mediocre String Problem(回文串,马拉车,扩展KMP)
  4. android中的ellipsize
  5. c语言炉石传说模仿代码项目,炉石传说套牌代码功能:卡组文本编码一键导入...
  6. 唱情歌 设计日记(一):电脑,手机,电视机,和家
  7. 修改镜像时区 容器时间
  8. 2021 New Year‘s Resolution
  9. 休闲零食市场调查,哪些品类值得代理
  10. 重定向和转发的区别及应用