有一只猴子,第一天摘了若干个桃子 ,当即吃了一半,但还觉得不过瘾 ,就又多吃了一个。
第2天早上又将剩下的桃子吃掉一半,还是觉得不过瘾,就又多吃了两个。
以后每天早上都吃了前一天剩下的一半加天数个(例如,第5天吃了前一天剩下的一半加5个)。
到第n天早上再想吃的时候,就只剩下一个桃子了。
第2天早上又将剩下的桃子吃掉一半,还是觉得不过瘾,就又多吃了两个。
以后每天早上都吃了前一天剩下的一半加天数个(例如,第5天吃了前一天剩下的一半加5个)。
到第n天早上再想吃的时候,就只剩下一个桃子了。
输入:猴子吃桃子天数n 输出:第一天的桃子个数。
思路:n<=0时,自然是作异常处理。
设桃子的数量num ,在第n+1天,num = 1;
那么在第n天,num = (num+n)*2;
第n-1天,num = (num+n-1)*2;
使用java来实现的话就是这样:
int num = 1;
for(int i = days;i>0;i--){
num = (num + i)*2;
}
。