算法描述

从贮油点i向贮油点i+1倒推的策略是,卡车在点i和点i+1间往返若干次。卡车每次返回i+1处时正好耗尽500公升汽油,而每次从i+1出发时又必须装足500公升汽油。两点之间的距离必须满足在耗油最少的条件下使i点贮足i500分升汽油的要求(0<=i<=n-1)。具体地讲,第一个贮油点i=1应距终点i=0处500km且在该处贮藏500公升汽油,这样才能保证卡车能由i=1处到达终点i=0处,这就是说dis[1]=500oil[1]=500;为了在i=1处贮藏500公升汽油,卡车至少从i=2处开两趟满载油的车至i=1处。所以i=2处至少贮有2500公升汽油,即oil[2]=5002=1000。另外,再加上从i=1返回至i=2处的一趟空载,合计往返3次。三次往返路程的耗油量按最省要求只能为500公升。即d12=500/3kmdis[2]=dis[1]+d12=dis[1]+500/3
为了在i=2处贮存1000公升汽油,卡车至少从i=3处开三趟满载油的车至i=2处。报以i=3处至少贮有3
500公升汽油,即oil[3]=500*3=1500。加上i=2至i=3处的二趟返程空车,合计5次。路途耗油量也应为500公升,即d23=500/5,dis[3]=dis[2]+d23=dis[2]+500/5

代码

#include<stdio.h>
voidmain()
{int k;
floatd,d1;
float oil[10],dis[10];
inti;printf(“NO.distance(k.m.)toil(l.)n”);
k=1;d=500;
dis[1]=500;
oil[1]=500;
do{
k=k+1;
d=d+500/(2k-1);
dis[k]=d;
oil[k]=oil[k-1]+500;
}while(!(d>=1000));
dis[k]=1000;
d1=1000-dis[k-1];
oil[k]=d1
(2*k+1)+oil[k-1];
for(i=0;i<k;i++)
printf("%d%f%f\n",i,1000-dis[k-i],oil[k-i]);}

【驻油点】一辆重型卡车欲穿过1000公里的沙漠,卡车耗油为1升/公里,卡车总载油能力为500公升。显然卡车一次是过不了沙漠的。因此司机必须设法在沿途建立几个贮油点,使卡车能顺利穿越沙漠,试问司机如何建相关推荐

  1. 汽车穿越沙漠的算法问题【python】

    一辆吉普车来到1000km宽的沙漠边沿.吉普车的耗油量为1L/km,总装油量为500L.显然,吉普车必须用自身油箱中的油在沙漠中设几个临时 加油点,否则是通不过沙漠的.假设在沙漠边沿有充足的汽油可供使 ...

  2. java卡车过沙漠问题_汽车最少油耗穿越沙漠问题(Java源码)

    例题: 一辆吉普车穿越1000km的沙漠,吉普车的总装油量为500加仑,耗油率为1加仑/km.由于沙漠中没有油库,必须先使用这辆车在沙漠中建立临时的油库(起点处吉普车满油).若吉普车用最少的耗油量穿越 ...

  3. FZU 1076 穿越沙漠(逆推建模)(数学)

    穿越沙漠 Problem Description 一辆吉普车来到x公里宽的沙漠边沿A点,吉普车的耗油量为1升/公里,总装油量为500升.通常,吉普车必须用自身油箱中的油在沙漠中设置若干个临时储油点,才 ...

  4. 算法 穿越沙漠问题(递推法)

    问题描述 一辆吉普车来到1000km宽的沙漠边沿.吉普车的耗油量为1L/km,总装油量为500L.显然,吉普车必须用自身油箱中的油在沙漠中设几个临时 加油点,否则是通不过沙漠的.假设在沙漠边沿有充足的 ...

  5. 算法之穿越沙漠、狱吏问题

    一.沙漠问题 1.问题描述 一辆吉普车来到1000km宽的沙漠边沿.吉普车的耗油量为1L/km,总装油量为500L.显然,吉普车必须用自身油箱中的油在沙漠中设几个临时 加油点,否则是通不过沙漠的.假设 ...

  6. 汽车最少油耗穿越沙漠问题(Java源码)

    例题: 一辆吉普车穿越1000km的沙漠,吉普车的总装油量为500加仑,耗油率为1加仑/km.由于沙漠中没有油库,必须先使用这辆车在沙漠中建立临时的油库(起点处吉普车满油).若吉普车用最少的耗油量穿越 ...

  7. 递推法:穿越沙漠问题

    吉普车试图穿越 x km 宽的沙漠,吉普车耗油率1L/km,总装油量 500L,对于 x > 500,吉普车需要设置临时储油点,以穿越沙漠.现在,我们需要对于输入的 x 值,计算最少的耗油量.其 ...

  8. 算法设计与分析-迭代法-穿越沙漠问题

    算法设计与分析-迭代法-穿越沙漠问题 题目: 用一辆吉普车穿越1000公里的沙漠.吉普车的总装油量为500升,耗油率为1升/公里.由于沙漠中没有油库,必须先用这辆车在沙漠中建立临时油库.该吉普车以最少 ...

  9. 【算法设计zxd】第3章 迭代法 杨辉三角,穿越沙漠,内存移动,竖式相乘(阶乘)

    目录 迭代:(辗转法)        一种 不断用变量的旧值递推新值的过程 [例3-1] 输出如图的杨辉三角形. [例3-2]穿越沙漠问题 [例3-2]内存移动问题 [例3-4]编程求当n<=1 ...

最新文章

  1. linux usb驱动框架
  2. [YTU]_2354 (实现复数类中的加运算符重载【C++运算符重载】)
  3. ASIHTTP 框架,同步、 异步请求、 上传 、 下载
  4. DROP TABLE、TRUNCATE TABLE和DELETE的区别
  5. python【进阶】4.文本和字节序列
  6. javascript 自定义Map
  7. 如何绘制逻辑图 — 7.逻辑的表达:业务逻辑
  8. 使用web服务器控件显示页面,服务器_Web服务器控件:TextBox控件,阅读此文请先查看网页教学网 - phpStudy...
  9. netcore之托管程序
  10. hdu 4405 Aeroplane chess 概率dp
  11. Fiddler中文乱码设置
  12. web微信授权登录-代码篇
  13. javascript nonono
  14. 哈夫曼码的编译码系统
  15. 好用的企业邮箱怎么选择?可用邮箱大全
  16. Linux常用图片查看处理软件
  17. Word换页不用频繁敲回车
  18. 计算机声音在线模拟,计算机声场模拟软件ODEON及其应用.pdf
  19. 什么样的人当不好程序员?
  20. 心理学统治世界(1)——股民的圣经

热门文章

  1. 2022最新常用API接口
  2. OpenGL中各种坐标系的理解
  3. 京东平台的产品标题的优化有什么技巧?
  4. 图片扫描文字识别工具:text scanner mac中文版
  5. 没的选择时,存在就是合理的::与李旭科书法字QQ聊天记录
  6. uboot 添加网络驱动
  7. 彻底解决连上了网却不能上网问题:未连接到互联网
  8. 计算机硬盘会消失,凡是能转的最后都会消失:盘点电脑硬盘发展史
  9. WinScp 安装连接使用
  10. 联想集团:联想,还是可以联想的