路线上的补给点只有到达后才可使用。不能因为下一个地点能恢复资源,就在资源不足以到达时提前把那份恢复计入当前预算。
这一篇用一组公开的自定义数据拆开计算过程。可以先遮住结果,依照约定逐项填写自己的记录,再用文末的复核办法检查。案例关注的是规则边界和状态变化,并不替任何具体作品规定玩法。
本次规则与数据
本例每段先检查并支付移动消耗,然后到站补充,最多到容量上限。某段消耗付不起就停止整条路线,不跨过失败段继续计算后面的补给。
依次判断消耗能否支付,支付成功才补充;失败立即停止。
上限16,初始15,每对数字是移动消耗和到站补充 [[4, 1], [2, 4], [2, 6], [6, 6], [8, 7], [8, 0], [3, 2], [8, 7], [5, 5]]
按顺序处理
第1段,出发前15,需4,到站补1:通过,扣后11,实际补1,到站后12。
第2段,出发前12,需2,到站补4:通过,扣后10,实际补4,到站后14。
第3段,出发前14,需2,到站补6:通过,扣后12,实际补4,到站后16。
第4段,出发前16,需6,到站补6:通过,扣后10,实际补6,到站后16。
第5段,出发前16,需8,到站补7:通过,扣后8,实际补7,到站后15。
第6段,出发前15,需8,到站补0:通过,扣后7,实际补0,到站后7。
第7段,出发前7,需3,到站补2:通过,扣后4,实际补2,到站后6。
第8段,出发前6,需8,到站补7:不足以出发,停在原站,后续段不执行。
成功经过7段,最终剩余6。
核对与应用
沿途逐段核对到站前数量和到站后数量。实际增加量可能小于补给标称量,超过上限的部分不保留;失败时仍留在上一个已经到达的地点。
即使终点提供充足补给,出发前的资源也必须足以走完最后一段。规划时可从每个补给点分别看下一段门槛,并区分总消耗是否够与每一段能否启动,这两件事不能相互替代。
若实际观察与这个模型不同,先确认操作顺序、编号起点和边界是否包含,再检查是否漏记了前一步状态。每次只改变一个条件并保留原记录,通常比反复重做整段操作更容易找到差异。明确条件后,才适合把同一种方法应用到新的场景。
