day08
题目:猴子吃了多少桃子?
题目描述:
猴子第一天摘了若干个桃子,当即吃了一半,还不解馋,又多吃了一个,第二天,吃剩下桃子的一半,还不过瘾,又多吃了一个,以后每天都吃前一天剩下的一半多一个,到第10天想再吃时,只剩下一个桃子了,问第一天共摘了多少个桃子?
解析:
采用逆向思维,从后往前推断,发现其中有相同的地方,即出现递推公式,可以采用递归方法,令S10=1,可以得出S9=2(S10+1),简化罗列关系为
S9=2S10+2
S8=2S9+2
......
Sn=2Sn+2
实现代码为
<script>
var s=0,
n=1;//最后一天桃子的数量
for(var i=1;i<10;i++){
s=(n+1)*2;
n=s;
}
console.log('第一天共摘了'+s+'个桃子');
</script>
输出结果为:第一天共摘了1534个桃子