关闭

324 猴子吃桃问题

386人阅读 评论(0) 收藏 举报
分类:

猴子吃桃问题

时间限制:3000 ms  |  内存限制:65535 KB
难度:0
描述
有一堆桃子不知数目,猴子第一天吃掉一半,又多吃了一个,第二天照此方法,吃掉剩下桃子的一半又多一个,天天如此,到第m天早上,猴子发现只剩一只桃子了,问这堆桃子原来有多少个? (m<29)
输入
第一行有一个整数n,表示有n组测试数据(从第二行开始,每一行的数据为:第m天);
输出
每一行数据是桃子的总个数
样例输入
2
3
11
样例输出
22
6142


这个题比较简单,有两种方法....


//循环模拟 
#include<stdio.h>
int main()
{
	int t,i,a,s;
	scanf("%d",&t);
	while(t--)
	{
		s=1;
		scanf("%d",&a);
		for(i=1;i<=a;++i)
		{
			s=(s+1)*2;//循环累加

		}
		printf("%d\n",s);
	}
	return 0;
}



公式法比较简单,但是推导需要一点计算....

//推导出公式....
#include<stdio.h>
#include<math.h>
int main()
{
	int a,b,t;
	scanf("%d",&t);
	while(t--)
	{
		scanf("%d",&a);
		b=3*pow(2,a)-2;
		printf("%d\n",b);
	}
	return 0;
}

        




0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:179596次
    • 积分:8862
    • 等级:
    • 排名:第2131名
    • 原创:739篇
    • 转载:5篇
    • 译文:0篇
    • 评论:3条
    最新评论