社区
数据结构与算法
帖子详情
卡车通过沙漠。。。。
12s
2003-11-25 09:43:58
一量重型卡车欲通过1000公里的沙漠,卡车耗油量为1公升/公里,卡车总载油量为
500公升,显然卡车装一次油是通过不了沙漠的。因此司机必须在沿途设立几个储
油点,使卡车能顺利通过沙漠。试问司机如何建这些储油点?每个储油点应该储多
少升油?才能使用卡车以最小耗油量的代价通过沙漠?
...全文
612
2
打赏
收藏
卡车通过沙漠。。。。
一量重型卡车欲通过1000公里的沙漠,卡车耗油量为1公升/公里,卡车总载油量为 500公升,显然卡车装一次油是通过不了沙漠的。因此司机必须在沿途设立几个储 油点,使卡车能顺利通过沙漠。试问司机如何建这些储油点?每个储油点应该储多 少升油?才能使用卡车以最小耗油量的代价通过沙漠?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
omrhal
2003-11-26
打赏
举报
回复
看过多次了,给你整理下
/*问题的描述:
一辆重型卡车欲穿过1000公里的沙漠,卡车耗油为1公升每公里,
卡车总载油能力为500公升。显然卡车装一次油是过不了沙漠的。
因此司机必须设法在沿途建立几个储油点,使卡车能顺利穿越沙漠,
试问司机如何建立这些储油点?每一储油点应存多少汽油,
才能使卡车以消耗最少的汽油代价通过沙漠?
算法描述:
从终点到起点1K公里.
我门从终点开始考虑,
也就是把终点到起点是:
I0……I1……I2……In
首先我们考虑是从I1到I0需要的油是500公升,也就是我门在I1的位置存放500公升的汽油才能保证车子到终点。
我门把两个I之间的距离写为S[i],耗油量为V[i];
这样第一步我们知道了I0……I1之间
S1=500公里,V1=500公升。
下一步,从I1……I2之间,我们必须至少要从I2处向I1开两趟车子(单向)才能保证I1处的储存量500公升。
这样因为我们是从I2开向I1处,所以,来回加(双向)在一起应该至少是3趟才能保证I1处有500公升的汽油。
能保证3次往返最低的耗油量就是500公升,
那么我们来求出3次往返的500公升耗油量的距离就是:S2=500 / 3。
I0……I2的距离就是:S1+S2=500+500/3
而同时在I2处的储存油量为:V2=500公升+500公升=1000公升
继续向下考虑,从I2……I3之间,保证I2处有1000公升的汽油,我门必须要卡车最少从I3向I2开3趟(单趟),来回就是5趟。路上的耗油量是500公升,也就是我门在I3处存放1500公升汽油。
那么我们来回的距离是:S3=500/5。
I0……I3的距离是:S1+S2+S3=500+500/2+500/3。
同时I3的储存油量是:1500公升。
由此推断:
如果需要i处储存油,那么要i*500的储存量。
车子从i+1到I处(单向)的至少要i次。加上返回的次数一共是2*i—1次。
而这2*i—1次的最小耗油量是500公升。
那么Si的距离就是500/(2*i—1)。
最后i=n到开始地点的
距离是1000-sum(Sn) (i为1、2、……求他们的和,也就是前面的总路程。)
储存油:n*500。
车子至少要从起点开n+1次满油到n处。加上返回的,一共是2n+1次。
我们2n+1次的耗油量是(1000-sum(Sn))*(2n+1)
[注:就是距离*往返次数=500和前面的500/往返次数=距离是一样的。]
我们起点的油量Vn+(1000-sum(Sn))*(2n+1)。
Vn就是从n点到终点I0总的需求油量。
*/
//具体程序:
#include <iostream.h>
void main(){
int dis[10],oil[10],i;
i=1;
dis[1]=500/(2*i-1);
oil[1]=i*500;
while(dis[i]<1000){
dis[i+1]=dis[i]+500/(2*i+1);
oil[i+1]=500+oil[i];
i++;
}
while(i-->1)
cout<<"\ndis["<<i<<"]="<<1000-dis[i]<<" oil[<<"<<i<<"]="<<oil[i];
}
ZhangYv
2003-11-25
打赏
举报
回复
http://search.csdn.net/expert/topic/6/603/2003/3/19/1552292.htm
http://expert.csdn.net/Expert/topic/2490/2490703.xml?temp=.4793512
卡车
过
沙漠
问题 C#
1. **状态空间搜索**:
卡车
过
沙漠
问题可以看作是图中的最短路径问题,可以通过广度优先搜索(BFS)或深度优先搜索(DFS)来解决。BFS通常用于找到最小代价的路径,因为它总是先探索最近的节点。 2. **动态规划**:...
Monster Truck Stunt 3D 怪物
卡车
特技Unity越野赛车怪物
卡车
赛车游戏项目源码C#
沙漠
为越野极限怪物
卡车
做好了准备,越野特技即将开始。怪物
卡车
特技游戏的不同令人惊叹的环境供您娱乐。这款惊人的特技
卡车
游戏需要漂移
卡车
疯狂驾驶并完全控制土
卡车
自行车。现在是时候通过驾驶 2018 年 4×4 越野...
自动化无人驾驶矿用
卡车
技术.doc
此外,AHS系统在高海拔和
沙漠
等恶劣环境下也能稳定运行,有助于降低运营成本,并通过优化能源使用减少二氧化碳排放。 在应用方面,小松的AHS系统已经在智利的Codelco旗下的Gabriela Mistral铜矿以及力拓位于智利的...
汽车穿越
沙漠
完整版(分析加源程序)
在这个问题中,我们有一个重载
卡车
需要穿越1000公里的
沙漠
,
卡车
每次可以携带500升汽油,而每行驶1公里会消耗1升汽油。目标是找到一种方法,使
卡车
用最少的汽油穿越
沙漠
,并在途中设立储油点。 首先,我们可以观察...
沙漠
储油点问题[代码]
在解决
沙漠
储油点问题的过程中,我们面临的主要挑战是如何高效地利用
卡车
有限的载油能力来穿越广阔的
沙漠
地带。当一辆重型
卡车
需要穿越长度在1000公里至1500公里范围内的
沙漠
时,
卡车
的耗油率是每公里1升,总载油...
数据结构与算法
33,029
社区成员
35,337
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章