猴子吃桃子问题

采用逆向思维:
/*
	猴子吃桃子问题。猴子第一天摘下若干个桃,当即吃掉一半,又多吃一个。
	第二天早上又将剩下的一半吃掉一半,又多吃一个。以后每天早上都吃了
	前天剩下的一半零一个,到第10天早上只剩下最后一个桃。问第一天摘了几个桃。
*/
#include<stdio.h>

int main()
{
	int sum;//桃子的总数
	int day = 9;//天数
	int temp=1;
	while(day!=0)
	{
		//第10天是1个桃子,则第9天的桃子数=(第10天剩余桃子数+1)后的2倍
		temp =2*(temp+1);//第一天的桃子数是第2天桃子数加1后的2倍
		day--;
	}
	sum = temp;
	printf("%d\n",sum);//答案是1534个桃子
	return 0;
}

=================================================================

假设从有一个桃子开始,每天加一个桃子在*2,一直做9次,即可累加出桃子的总数

程序代码如下:

#include<stdio.h>
int main()
{
	int sum=1;//表示第10天桃子

	for(int i=0;i<9;i++)//循环9次,依次反推出第八天,第七天...直到求出第一天的桃子总数
	{
		sum++;//桃子数现加1
		sum*=2;//在*2倍
	}
	printf("%d\n",sum);//输出桃子总数1534

	return 0;
}



 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

绝地反击T

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值