当前位置: 首页 > article >正文

穿越沙漠问题

题目:一辆吉普车穿越1000km的沙漠。吉普车的总装油量为500L,耗油率为1L/km。由于沙漠中没有油库,必须先用这辆车在沙漠中建立临时油库。若吉普车用最少的耗油量穿越沙漠,应在哪些地方建立油库,以及各处存储的油量是多少?

思路:从终点往前推。距离终点500km应有一个加油站,油量为500L,这样当吉普车到达该加油站时,能直接到达终点,并且油刚好用完(吉普车达到该加油站时也正好用完之前的油)。然后思考第2个加油站,从刚刚的加油站往前推,吉普车要运500L的油放在第1个加油站,必然需要来回运,至少需要走3段路。要想让这段路尽量长,就要多耗油,最多能耗500L油,500L油能走500km,每段走500/3km,所以,第2个加油站的油量为500L+500L(运到第1个加油站的油量+路上耗油),距离终点500km+500/3km……

#include<iostream>
using namespace std;

int main(){
	cout<<"从终点往起点:"<<endl;
	int k=1,oil=500,dis=500;
	int x=2*k-1;//走多少段路 ,来回运 
	while(dis<1000){
		cout<<"第"<<k<<"个加油站:共"<<oil<<"L油,距离终点"<<dis<<"km"<<endl;
		k++;
		x=2*k-1;
		oil=oil+500;
		dis=dis+500/x;
	}
	if(dis>=1000){
		oil=oil-500;
		dis=dis-500/x;
		
		oil=oil+(1000-dis)*(2*k-1);
		dis=1000;
		cout<<"第"<<k<<"个加油站:共"<<oil<<"L油,距离终点"<<dis<<"km"<<endl;
	}
	return 0;
} 

 


http://www.kler.cn/news/354946.html

相关文章:

  • 在线白板:为远程课堂注入活力的协作工具
  • javaweb-xml映射文件编写sql语句
  • 实战RAG第二天——xinference部署大模型,全部代码,保姆级教学
  • 软件测试学习笔记丨Linux三剑客-sed
  • 【实战篇】用SkyWalking排查线上[xxl-job xxl-rpc remoting error]问题
  • 95后研究员4个博士学位 本人发声
  • 如何通过自然外链提升外贸网站权重?
  • Apache SeaTunnel 2.3.8版本正式发布!
  • Jupyter Notebook汉化(中文版)
  • uniapp的移动端骨架屏组件开发应用
  • Java重修笔记 TCP 网络通信编程 - 传输文件
  • 【计算机网络 - 基础问题】每日 3 题(四十五)
  • 供应商管理是什么?
  • 瘦客户机介绍
  • 智能时代03学习日记
  • 自监督学习:引领机器学习的新革命
  • 电脑显示未安装任何音频输出设备怎么处理?
  • SQL中GROUP BY 和 HAVING 子句中使用 NULL 条件问题
  • Oracle实际需要用到但常常被忽略的函数
  • 3D Slicer 教程一