| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2569 人关注过本帖
标题:[求助]猴子吃桃
只看楼主 加入收藏
PKER
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2007-10-18
收藏
 问题点数:0 回复次数:34 
[求助]猴子吃桃
猴子第一天摘了一些桃子,当天吃一半加1个,以后每天吃前天剩下的一半加1个,10天后只剩下1只,求第一天摘了多少?
我想用正推穷举把总数定为10000内,不知道这种思路对不对,结果是没有输出,也不知道哪里有问题
#include <stdio.h>
#define DAY 10
int main(void)
{
int i,n,m;
for(n=10;n<10000;n+=2);
{
m=n;
for(i=1;i<DAY;i++)
m=m-(m/2+1);
if (m==1)
{
printf("%d",n);
n=10000;
}
}
getchar ();
}
搜索更多相关主题的帖子: 猴子 
2007-10-26 14:20
chmlqw
Rank: 1
等 级:新手上路
帖 子:180
专家分:0
注 册:2007-10-11
收藏
得分:0 
逆向思考
第十天: 1
第九天: 1+2*1=3
第八天: 1+2*3=7;
.......


n = 1;
for (i=day; i>0; i--)
n = n*2+1;
......
大概这样
2007-10-26 14:28
PKER
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2007-10-18
收藏
得分:0 
逆推是可以,但我觉得穷举正推也应该可以,所以请问是不是什么地方出错了?

抵制日货,人人有责!
2007-10-26 14:34
PKER
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2007-10-18
收藏
得分:0 
以下是引用chmlqw在2007-10-26 14:28:48的发言:
逆向思考
第十天: 1
第九天: 1+2*1=3
第八天: 1+2*3=7;
.......


n = 1;
for (i=day; i>0; i--)
n = n*2+1;
......
大概这样

但是好象不是这样逆推的……


抵制日货,人人有责!
2007-10-26 14:37
jianping814
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2007-10-12
收藏
得分:0 
int i,sum=1;
for(i=1;i<10;i++)
sum=(sum+1)*2;
应该可以啊

2007-10-26 14:47
PKER
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2007-10-18
收藏
得分:0 

主要不是讨论反推到底如何,请问我用正推到底行不行?不行又是哪里出了问题?
还望高人指点迷津


抵制日货,人人有责!
2007-10-26 14:51
xindeluoye
Rank: 2
等 级:论坛游民
帖 子:49
专家分:20
注 册:2007-10-8
收藏
得分:0 
可能是你哪里输错了
我把你的复制过来运行不出结果
重新输了一遍就可以了

2007-10-26 14:53
PKER
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2007-10-18
收藏
得分:0 
哪里错了还请LS指明,谢谢

抵制日货,人人有责!
2007-10-26 14:58
xindeluoye
Rank: 2
等 级:论坛游民
帖 子:49
专家分:20
注 册:2007-10-8
收藏
得分:0 
你重新输一遍试试

2007-10-26 14:59
chmlqw
Rank: 1
等 级:新手上路
帖 子:180
专家分:0
注 册:2007-10-11
收藏
得分:0 

我重新输入了一次试了下
程序是对的....
但是复制下来的程序就是错的
不知道怎么回事,哪个高手指点下...

2007-10-26 15:15
快速回复:[求助]猴子吃桃
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018990 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved