猴子吃桃问题——C语言
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语言相关推荐
- 猴子吃桃问题c语言两种实现形式:传统方式和通过递归函数的形式实现,简单易懂
#include<stdio.h>//标准的输入输出流 #include<stdlib.h>//system("pause")要用 int func1(in ...
- 猴子吃桃问题 C语言用递归实现
问题:有一只猴子第一天摘下了若干个桃子,当即吃掉了一半,觉得不过瘾又多吃了一个: 第二天又将剩下的桃子吃掉了一半,还不过瘾又多吃了一个:按照这个吃法,每天都吃掉前一天剩下的一半又多一个. 到了第十天, ...
- 猴子吃桃(C语言实现)
[题目描述] 猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个.第二天早上又将第一天剩下的桃子吃掉一半,有多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第 n 天早上想再吃时, ...
- 猴子吃桃问题c语言链表,数据结构课程设计--猴子吃桃子问题.doc
Data organization curriculm project 数据结构课程设计 设计题目: 猴子吃桃子问题 专业班级: 通信工程0804班 学生学号: 0909082421 学生姓名: 王 ...
- OJ1054: 猴子吃桃(C语言)
题目描述 悟空第一天摘下桃子若干,当即吃掉一半,还不过瘾,又多吃一个,第二天又将剩下的桃子吃掉一半多一个,以后每天吃掉前一天剩下的一半多一个,到第n天准备吃的时候只剩下一个桃子.聪明的你,请帮悟空算一 ...
- 猴子吃桃问题(C语言)
一只猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个:第二天早上又将剩下的桃子吃掉一半,又多吃了一个.以后每天早上都吃了前一天剩下的一半加一个.到第N天早上想再吃时,见只剩下一个桃子了. ...
- 电子协会 C语言 3级 50 、猴子吃桃
2.1基本算法之枚举 7217:猴子吃桃 OpenJudge - 7217:猴子吃桃 海滩上有一堆桃子,N 只猴子来分.第一只猴子把这堆桃子平均分为 N 份,多了一 个,这只猴子把多的一个扔入海中,拿 ...
- 编程笔试(解析及代码实现):猴子吃桃。猴子第一天吃了若干个桃子,当即吃了一半,还不解馋,又多吃了一个…的C++、Java、Python、C#等语言代码实现
编程笔试(解析及代码实现):猴子吃桃.猴子第一天吃了若干个桃子,当即吃了一半,还不解馋,又多吃了一个. 第二天早上又将剩下的桃子吃了一半,还是不过瘾,又多吃了一个.以后每天都吃前一天剩下的一半再加一个 ...
- C语言试题六十五之请编写函数实现猴子吃桃问题
1. 题目 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个.第二天早上又将第一天剩下的桃子吃掉一半,有多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第 10 天 ...
最新文章
- python可以干嘛用-Python可以被用来做哪些神奇好玩的事情
- java中正则表达式函数_java正则表达式PHP中的正则表达式函数介绍
- 【问链-链改进行时】 第二课 链改的技术架构选择
- codeigniter在nginx安装配置及URL重写
- 机器学习(十六)——隐式狄利克雷划分
- python怎么打开程序管理器_Python 进程管理工具 Supervisor 使用教程
- myeclipse连接mysql怎么调用_myeclipse连接mysql数据库详细步骤
- gstreamer插件用不了,及黑名单Blacklist的解决办法
- Luogu3444:[POI2006]ORK-Ploughing
- 【Android】ListView刷新、加载
- linux虚拟实验室关闭了,Linux在线虚拟云实验室,提升RHCE考试通过率
- Leetcode 853 车队
- 谁发明了区块链?谁是中本聪?
- 今日分享-自定义返回按钮(与系统按钮位置一致)
- 力扣周赛310场题解
- 50个CSS编辑工具
- 华为服务器1u系列,1u服务器
- 中小项目敏捷实践之五(关于单元测试)
- 【SE】Week2 : 个人博客作业
- ASP.NET - 查询邮件及邮件内容
热门文章
- vue 打包优化,解决包大下载慢
- 前端学习之路之SPA(单页应用)设计原理
- 2018ICPC南京 Problem M. Mediocre String Problem(回文串,马拉车,扩展KMP)
- android中的ellipsize
- c语言炉石传说模仿代码项目,炉石传说套牌代码功能:卡组文本编码一键导入...
- 唱情歌 设计日记(一):电脑,手机,电视机,和家
- 修改镜像时区 容器时间
- 2021 New Year‘s Resolution
- 休闲零食市场调查,哪些品类值得代理
- 重定向和转发的区别及应用