方向输入可以立即改变期望速度,但实际速度不一定同拍跳到目标值。限制每拍速度变化量,可以把起步、刹车和反向过程表示成容易复核的记录。
本篇用一组独立输入把规则展开为可重复核对的记录。先确认单位、编号及边界,再自行尝试推演,然后寻找与下面过程第一次不同的位置。所有结果只在这里写明的规则下成立,不能当作所有游戏的统一实现。
一维整数位置,初始速度与位置给定。每拍实际速度朝期望速度靠近,但变化绝对值不超过固定上限,不越过期望值;随后用更新后的速度移动一拍。没有摩擦、地形或其他外力。
初始[位置,速度][5, -1],加速上限2 [8, 0, -8, -9, 1, -7, -8, 2, 3, -8, 0, 4, 8, 0, -10, 9, 5]
第1拍目标速度8,旧速度-1,变化2,新速度1,更新后位置6;变化上限为2。
第2拍目标速度0,旧速度1,变化-1,新速度0,更新后位置6;变化上限为2。
第3拍目标速度-8,旧速度0,变化-2,新速度-2,更新后位置4;变化上限为2。
第4拍目标速度-9,旧速度-2,变化-2,新速度-4,更新后位置0;变化上限为2。
第5拍目标速度1,旧速度-4,变化2,新速度-2,更新后位置-2;变化上限为2。
第6拍目标速度-7,旧速度-2,变化-2,新速度-4,更新后位置-6;变化上限为2。
第7拍目标速度-8,旧速度-4,变化-2,新速度-6,更新后位置-12;变化上限为2。
第8拍目标速度2,旧速度-6,变化2,新速度-4,更新后位置-16;变化上限为2。
第9拍目标速度3,旧速度-4,变化2,新速度-2,更新后位置-18;变化上限为2。
第10拍目标速度-8,旧速度-2,变化-2,新速度-4,更新后位置-22;变化上限为2。
第11拍目标速度0,旧速度-4,变化2,新速度-2,更新后位置-24;变化上限为2。
第12拍目标速度4,旧速度-2,变化2,新速度0,更新后位置-24;变化上限为2。
第13拍目标速度8,旧速度0,变化2,新速度2,更新后位置-22;变化上限为2。
第14拍目标速度0,旧速度2,变化-2,新速度0,更新后位置-22;变化上限为2。
第15拍目标速度-10,旧速度0,变化-2,新速度-2,更新后位置-24;变化上限为2。
第16拍目标速度9,旧速度-2,变化2,新速度0,更新后位置-24;变化上限为2。
第17拍目标速度5,旧速度0,变化2,新速度2,更新后位置-22;变化上限为2。
最终位置-22、速度2,总位移-27。
对每拍检查新速度位于旧速度与期望速度之间,并且与旧速度相差不超过上限;若期望仍在可达区间外,应恰好改变一个上限。累计新速度之和必须等于最终位置减初始位置。
本例先更新速度再移动,若另一实现先移动再更新,位置记录会不同。反向输入时可能先减速到零,再逐渐反向,不能把仍向前移动立刻解释为输入失效。单位是一拍的简化模型,不直接代表真实物理秒。
练习时先保存原始输入及中间结果,再只改变一个条件观察差异。重点检查空状态、相同数值、恰好到达边界和最后一步。不要为了凑出相同的最终结果而忽略较早出现的偏差,过程和结论都应能由同一套规则解释。