猴子吃桃子的问题
2016-02-27 18:15
459 查看
猴子吃桃子的问题
1、问题背景
有只猴子第一天摘了若干桃子,当即吃了一半,还不过瘾,又多吃了一个;第二天早上又将剩下的桃子吃掉一半,又多吃了一个;以后每天早上都吃了前一天剩下桃子的一半还多一个。到第10天早上想再吃时,就只剩下一个桃子了。问:这只猴子第一天共摘了多少个桃子?
2、解题思路
采用逆向思维,由后往前推,递归思想
3、解决办法
(1)直接推断
第十天:1
第九天:4
第八天:10
第七天:22
第六天:46
第五天:94
第四天:190
第三天:382
第二天:766
第一天:1534
(2)数学方法
运用递归方法
S10=1
S9=2(S10+1)
S8=2(S9+1)
...
Sn=2Sn+1 +2
S1=2^9*S+2^9+......+2
=512+512+256+128+64+32+16+8+4+2=1534
(3)Java代码实现
1、问题背景
有只猴子第一天摘了若干桃子,当即吃了一半,还不过瘾,又多吃了一个;第二天早上又将剩下的桃子吃掉一半,又多吃了一个;以后每天早上都吃了前一天剩下桃子的一半还多一个。到第10天早上想再吃时,就只剩下一个桃子了。问:这只猴子第一天共摘了多少个桃子?
2、解题思路
采用逆向思维,由后往前推,递归思想
3、解决办法
(1)直接推断
第十天:1
第九天:4
第八天:10
第七天:22
第六天:46
第五天:94
第四天:190
第三天:382
第二天:766
第一天:1534
(2)数学方法
运用递归方法
S10=1
S9=2(S10+1)
S8=2(S9+1)
...
Sn=2Sn+1 +2
S1=2^9*S+2^9+......+2
=512+512+256+128+64+32+16+8+4+2=1534
(3)Java代码实现
/** * * @title:MonkeyPeach.java * @Package:com.you.hbxs.model * @Description:<h3>猴子吃桃问题</h3> * @author:游海东 * @date:2016-2-27下午5:59:44 * @version V1.0 * */ package com.you.hbxs.model; /** * * 项目名称:HBXS * 类名称:MonkeyPeach * 类描述: * 创建人:游海东 * 创建时间:2016-2-27下午5:59:44 * 修改人:游海东 * 修改时间:2016-2-27下午5:59:44 * 修改备注: * @version V1.0 * */ public class MonkeyPeach { /** * * 方法名:getPeachNum * 方法类型:MonkeyPeach * 参数:@param days * 参数:@param peach * 参数:@return * @return :int * @throws */ public static int getPeachNum(int days,int peach) { if(days == 1) { return peach; } else { days--; peach = (peach+1)*2; return getPeachNum(days,peach); } } /** * * 方法名:main * 方法类型:MonkeyPeach * 参数:@param args * @return :void * @throws */ public static void main(String[] args) { int peachNum = getPeachNum(10, 1); System.out.println("桃子的个数:"+peachNum); } }
相关文章推荐
- FPGA知识大梳理(二)verilogHDL语法入门(1)
- CodeForces 612 D. The Union of k-Segments(水~)
- javascript高级程序设计笔记-第三章(基本概念)
- codeforces 628D 数位dp
- 绘画基础研究(一)-画面的对象组成与形状组成
- 如何获取 yum 安装的 rpm 包位置---详解
- CF 50A Domino piling
- C语言中的类型转换
- 学习《Python核心编程》做一下知识点提要,方便复习(一)
- POJ 2376 Cleaning Shifts (贪心区间最少覆盖)
- Connection timed out: connect. If you are behind an HTTP proxy, please configure the proxy settings
- Android 手势检测实战 打造支持缩放平移的图片预览效果(下)
- iOS图标抖动效果
- ssh服务优化与客户端命令使用
- bzoj1196 公路修建问题
- 【leetcode】Array——Rotate Image(48)
- iOS 隐藏键盘的几种常见方法
- Android绚丽加载效果视图(loading)控件
- Android 手势检测实战 打造支持缩放平移的图片预览效果(上)
- 浅谈OC运行时(RunTime)