在正常的思路中,最简情况为6*6=36行。
详见我之前的攻略:https://www.taptap.cn/moment/548067507773115805?utm_medium=share&utm_source=copy&share_id=811FB8ACA045但在这一关可以利用特性进一步简化代码。
本关只要经过了所有正确路点,就会立即判定成功,即使你的代码中机器人还要前往下个路点。当一个机器人需要移动2格及以上时,那么它一定是移动距离最长的机器人(或之一),来分析一下:假设移动2格,那么加上他自身就包含了3格的位置,在这一情况下必定有其他机器人存活(不然不会只移动2格),那么剩下的机器人最多只能移动2格(自身1格加2格),因此2格及以上必定为最长移动距离。因为所有机器人速度相同且几乎同时移动,那么2格及以上的移动必定是最后(或2个同时)到达终点的,这样即使代码要求继续移动,也会直接判定成功,并且当移动距离大于2格时,其余机器人最多只会移动1格,所以我们让2格以上的情况直接逆时针移动5个路点。这样,总体就分为3种情况:站立、移动1格、移动2格及以上。我们将移动5个路点无条件放在第一行即可包含4种情况,加上另外2种情况以及信号开启,每个机器人4行,那么最简为4*6=24行