猴子吃桃详解
Posted 超浪*牛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了猴子吃桃详解相关的知识,希望对你有一定的参考价值。
问题描述
*猴子吃桃
*猴子摘了一堆桃子,当即吃了一半,在多吃一个,第二天又吃了昨天剩下的一半加一个……
*第十天只剩下了一个 ,求共有多少个桃子
- 思路解析如递推法详解
递归法
int fun(int i){//i为天数
if(i==10){
return 1;
}else{
return (fun(i+1)+1)*2;
}
}
递推法
//第二天是第一天的一半还少1,以此类推……
//到了第十天只剩下一个,从第十天反推九次可得到第一天的桃子数
//人言:假设桃子总数为sum,则第十天的sum=1,根据题意,设第九天有桃子n个,那么第十天的剩下桃子的为 (n/2-1) 也就是 n/2-1= sum;那么这个n等于多少?就是咋们求得数字,经过数学公式演变: n = (sum+1)* 2,以此类推,求得第十天的总数。
int main(){
int i=0;
int sum=1;//这是第十天的数量,只需要求剩余9天的
for(i=10;i>1;i--){
sum=(sum+1)*2;
}
printf("%d",sum);
return 0;
}
答案
以上是关于猴子吃桃详解的主要内容,如果未能解决你的问题,请参考以下文章