黑马程序员技术交流社区
标题:
猴子吃桃问题,我就是不会呀,不是我懒呀。
[打印本页]
作者:
漫漫
时间:
2014-7-17 16:40
标题:
猴子吃桃问题,我就是不会呀,不是我懒呀。
本帖最后由 漫漫 于 2014-7-19 08:52 编辑
猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下
的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
作者:
istream
时间:
2014-7-17 23:14
本帖最后由 istream 于 2014-7-17 23:16 编辑
1534个桃子
#include <stdio.h>
int main()
{
int sum = 1;
for (int i = 0; i < 9; i++)
{
sum += 1;
sum *= 2;
}
printf("sum= %d\n", sum);
return 0;
}
复制代码
作者:
追马
时间:
2014-7-18 09:45
公务员考试里面有类似的题。
采取逆向思维的方法,从后往前推断。
main()
{
int day,x1,x2;
day=9;
x2=1;
while(day>0)
{x1=(x2+1)*2;/*第一天的桃子数是第2天桃子数加1后的2倍*/
x2=x1;
day--;
}
printf("the total is %d\n",x1);
}
复制代码
作者:
chengnuoaini030
时间:
2014-7-18 14:27
我来看一下~
作者:
为爱编程
时间:
2014-7-18 15:38
从后往前推,初值为一,每次的值等于前一次的值加一再乘以二,循环10次。即可得到结果。
作者:
爱情路13号
时间:
2014-7-19 00:25
这一题还是很久一段时间之前写,如果没记错的话应该是100道经典题目里面的。主要考得是算法设计,就是看你怎么想这个问题,如何让设计解决问题的思路。代码倒是挺容易的
#include <stdio.h>
int main(int argc, const char * argv[])
{
// insert code here...
int n =1;
for (int i =2; i<=9; i++)
{
n=(n+1)*2;
}
printf("%d\n",n);
return 0;
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2