| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1264 人关注过本帖
标题:一道关于路程的程序。我一直看不懂,请教大家帮着看看和解释一下,谢谢。我 ...
只看楼主 加入收藏
海蓝
Rank: 1
等 级:新手上路
帖 子:121
专家分:0
注 册:2004-8-6
收藏
 问题点数:0 回复次数:9 
一道关于路程的程序。我一直看不懂,请教大家帮着看看和解释一下,谢谢。我很急急着

用一辆车穿越沙漠1000km。车的总装油量500L,耗油率为1L/km。由于沙漠中没有油库,必须先这辆车在沙漠中建立临时油库。该车要以最少的油耗穿越沙漠,应在什么地方建立临时油库,以及在各处安放多少油为最好??

我想了好就,就是想不出来它的算法,请教各位大虾不吝赐教。。 并且 题意我也没有弄明白,,

后面是答案,请高手指教。我没看懂。。

main() {int k=1;

float station,distation,total; station=distation=total=500;

while(distation<1000) {printf("station(%d)=%9.4foil'stotal(%d)=%10.4f\n",k,station,k,total); total=500* ++k ;

station=500/(2*k-1); distation+=station;}

distation - =station; station=1000-distation;

printf("station(%d)=%9.4f oil'total(%d)=%10.4f\n",k,station,k,(k-1)*500+(2*k-1)*station);}

搜索更多相关主题的帖子: 路程 解释 
2004-08-12 10:35
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
两个字:递归

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2004-08-12 11:24
youthlin
Rank: 1
等 级:新手上路
帖 子:36
专家分:0
注 册:2004-8-7
收藏
得分:0 
能给点具体点的算法吗?最主要的是怎么求最小值,还有油站间的距离
2004-08-13 09:31
海蓝
Rank: 1
等 级:新手上路
帖 子:121
专家分:0
注 册:2004-8-6
收藏
得分:0 

是啊。给点具体

的分析好吗》 ??????

2004-08-13 11:50
乌鸦丘比特
Rank: 1
等 级:新手上路
威 望:2
帖 子:625
专家分:0
注 册:2004-7-19
收藏
得分:0 

是反推吧…… 从终点到反推到起点。

汽车到达终点时应该正好没油,而从上一个油点出来应该是装满油从这里可以推出上一个油点的位置。

然后从上一个油点继续往前推 ,

对于每一种情况,汽车从上一个油点到下一个都要装满油,如果这个油点的油每达到要求还要回去,回上一个油点的时候

汽车的油应该正好可以回去,就用这些条件分析一下反推就可以了(当然递归也可以,其实递推更好)


我喜欢创造,一只扑腾着翅膀向天空飞翔的乌鸦
2004-08-13 12:26
海蓝
Rank: 1
等 级:新手上路
帖 子:121
专家分:0
注 册:2004-8-6
收藏
得分:0 

运行结果,好象第一个站是500,然后是166,从166根本没有办法把油运到500啊,汽车最多能带500油,166到500的距离是334,一个来回根本不够,我想他的建站的意思是不是汽车开到某

个地方,把多余的油放在那,然后再回来运,如果不是这样,那么用+油车去500的地方建个就好了。我就是搞不懂这个结果为什么会是这样。。

请大家,帮着好好看看,,提提意见和看法。。。。谢谢

2004-08-14 11:04
乌鸦丘比特
Rank: 1
等 级:新手上路
威 望:2
帖 子:625
专家分:0
注 册:2004-7-19
收藏
得分:0 

我在5楼已经提出过一些条件了,现在再补充一些。

从终点到倒数第一个油点的距离应该不用说了,

下面说说从倒数第二个到倒数第一个。以知倒数要第一个有500L油那汽车最少要开两次满载才能装满。所以倒数第二

个的油点有1000L的油。为什么可以这么推理呢?这就是这个题目的难点。原因就是要耗油最少。汽车穿过沙漠耗费的油我们可以分为应该的和浪费的(来回开的),假设在一个油点和另外一个油点之间要来回N次,如果我可以在这两个油点

之间多加几个油点,使我在每个油点之间只往返N-1或者更少次,这样不是少浪费了吗?再看

我是反推,从后面推到前面,后面浪费得越多,对前面油点的油需求句更大——恶性循环。

所以每一次向前推都要让往返次数尽量少,对前一个油点的需求也应该尽量少。所以从倒数第三个油点应该有1500L油,

汽车开3次满载运到倒数第二个油点。

好了,好好理解,这个题目的确不好理解。

PS:打字打得手指都酸了


我喜欢创造,一只扑腾着翅膀向天空飞翔的乌鸦
2004-08-14 11:31
海蓝
Rank: 1
等 级:新手上路
帖 子:121
专家分:0
注 册:2004-8-6
收藏
得分:0 

非常 非常感谢你。。谢谢。。。

不好意思。我还有点问题想问问你,就是关于车油库的定位,比如说倒数第一个油库在沙漠的500米处。那么倒数第二个应该怎么定位置呢?看你的提示-是不是从倒数第二个油库要储存1000

升油,分两个来回送入倒数第一个油库,但是答案确实166.6667,那么1000怎么够他们来回的消耗和往油库储存油呢???

请再指点指点????十万分的感谢。。。

2004-08-14 13:15
乌鸦丘比特
Rank: 1
等 级:新手上路
威 望:2
帖 子:625
专家分:0
注 册:2004-7-19
收藏
得分:0 

根据1000就可以求出一共在这个路段上消耗了500L,而在这个路段上汽车来回了3次,——向终点方向2次,回去一次。

所以可以算出上一个油点距最后一个油点得距离为500/3,这还没到起点,所以还要同理往前推,直到到起点为止。

你的代码应该也是按照这个思想编出来的。


我喜欢创造,一只扑腾着翅膀向天空飞翔的乌鸦
2004-08-14 14:48
海蓝
Rank: 1
等 级:新手上路
帖 子:121
专家分:0
注 册:2004-8-6
收藏
得分:0 

十二万分的感谢,谢谢。可以交个朋友吗?我的QQ是65621211

2004-08-14 16:05
快速回复:一道关于路程的程序。我一直看不懂,请教大家帮着看看和解释一下,谢谢 ...
数据加载中...
 
   



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

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