穿越沙漠

本文探讨如何使用递推算法解决穿越沙漠的难题,关键在于推导相邻储油点间油量和距离的关系。通过从终点到起点的反向思考,建立递推公式,并证明最小用油量情况下,每段路程的行驶次数。最后得出每个储油点的储油量和间距的表达式,并给出AC代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原题目: 穿越沙漠


要穿越沙漠,吉普车需要利用油箱的油在沙漠中设立临时储油点(即车要在两个相邻储油点间来回送油),要求出最少的总用油量能使通过沙漠.

本题考察递推算法,难点当然在于递推公式(相邻储油点间油量,距离到关系)的推导.在正面(从起点到终点)推导失败到情况下,我开始尝试从反面(从终点到起点)推导.

首先要达到该结果,有几个条件必须满足:车在相邻两个储油点间必须行驶奇数次;车每次一个(前一个定义为靠近起点)储油点出发时油箱中必须是满的;车每次到达下一个(下一个定义为靠近终点)储油点是油箱必须是空的(对于在两相邻储油点的最后一次行驶,到达下一个储油点时油箱不空,可以成将油箱剩余的油放置在储油点,出发时).


满足以上条件即可推导两个相邻储油点间关系:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值