黑马程序员技术交流社区

标题: 猴子吃桃问题 [打印本页]

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

作者: huihui1030    时间: 2015-11-17 21:45
求大神告知。。。我也是很困惑。。
作者: fenghun1991    时间: 2015-11-17 22:18
用循环被,第10是1个,第九天是(1+1)*2,=4,第八天是(4+1)*2,....n=(n+1)*2,外面套个for循环
作者: 陈光慧    时间: 2015-11-17 22:30
好高深的问题,重温了高中数据
作者: springD    时间: 2015-11-17 23:13
设第一天共摘了x个桃子

天数          剩余的桃子数
1               x/2-1=(x-2)/2
2              (x-2)/2/2-1=(x-6)/4
3               (x-6)/4/2-1=(x-14)/8
4               (x-14)/4/2-1=(x-30)/16
.                .
.                .
.                .
n             由此可推断第n天为 [x-(2*2^n-2)]/2^n,n为天数。

由题可知,第10天没有吃,因此第10天剩下的1个桃为第9天吃了第8天剩下的一半数量再减一,所以第9天吃了剩余桃的数量为1,根据上述推断列方程:

               [x-(2*2^9-2)]/2^9=1
               (X-1022)/512=1
               X=1534
第一天共摘1534个桃子,这个猴子可真能吃。
作者: sd6628611    时间: 2015-11-18 00:06
springD 发表于 2015-11-17 23:13
设第一天共摘了x个桃子

天数          剩余的桃子数

厉害厉害,试着写个代码呗
作者: JYcainiao    时间: 2015-11-18 00:50
springD 发表于 2015-11-17 23:13
设第一天共摘了x个桃子

天数          剩余的桃子数

第九天应该吃了3个吧
作者: JYcainiao    时间: 2015-11-18 01:41
本帖最后由 JYcainiao 于 2015-11-18 01:45 编辑
springD 发表于 2015-11-17 23:13
设第一天共摘了x个桃子

天数          剩余的桃子数
我怎么感觉你说的不对啊......下面是我算出来的   你看看吧
树上一共有1534个桃子
第1天树上有1534个桃子,猴子吃了768个桃子,剩余766个桃子.
第2天树上有766个桃子,猴子吃了384个桃子,剩余382个桃子.
第3天树上有382个桃子,猴子吃了192个桃子,剩余190个桃子.
第4天树上有190个桃子,猴子吃了96个桃子,剩余94个桃子.
第5天树上有94个桃子,猴子吃了48个桃子,剩余46个桃子.
第6天树上有46个桃子,猴子吃了24个桃子,剩余22个桃子.
第7天树上有22个桃子,猴子吃了12个桃子,剩余10个桃子.
第8天树上有10个桃子,猴子吃了6个桃子,剩余4个桃子.
第9天树上有4个桃子,猴子吃了3个桃子,剩余1个桃子.
第10天树上有1个桃子,猴子没有吃.
猴子第一天吃了768个



作者: springD    时间: 2015-11-18 08:48
JYcainiao 发表于 2015-11-18 01:41
我怎么感觉你说的不对啊......下面是我算出来的   你看看吧
树上一共有1534个桃子
第1天树上有1534个桃子, ...

你的推算过程和我的想法是一样的噢
作者: springD    时间: 2015-11-18 08:57
JYcainiao 发表于 2015-11-18 01:41
我怎么感觉你说的不对啊......下面是我算出来的   你看看吧
树上一共有1534个桃子
第1天树上有1534个桃子, ...

但初始值不是树上有多少个桃子,而是摘了多少个桃子




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2