方格解谜·转向也有代价:A2至E6的第19图
这是一道专为练习设计的单人方格关卡,主题是转向也有代价,不是任何商业游戏的攻略。第19图从A2开始,目标标记在E6。先独立画一条候选路线,再与下文核对;解题重点是解释每一步为何允许,而不是记住某串方向。
读图与规则
地图共六行六列。列从左到右为A至F,行从上到下为1至6;例如C2表示第二行第三列。S是起点,G是目标,#是墙,.是普通空地。每次只能上下左右移动,不允许斜走或越过边界。
每次移动花费1点;如果移动方向与上一次不同,另加2点。第一步没有转向费用,掉头也只加2点。
A B C D E F 1 . . . . # # 2 S . . . . . 3 . . # . # . 4 . . # . # . 5 . . . # . . 6 . # . . G .
本图只有普通空地与墙。
先理解要记录什么
到达同一位置时,朝向不同会影响下一步成本。比较路线时既看长度,也数清方向改变了多少次。
弯曲较少不自动代表最优,仍需把多走的步数加进总价;最后到达出口后不再收取转向费用。
可行路线与关键状态
A2 → B2 → C2 → D2 → E2 → F2 → F3 → F4 → F5 → F6 → E6
第6步在F3:转向加2;第10步在E6:转向加2。
1. 右:A2→B2;本次1,累计1 2. 右:B2→C2;本次1,累计2 3. 右:C2→D2;本次1,累计3 4. 右:D2→E2;本次1,累计4 5. 右:E2→F2;本次1,累计5 6. 下:F2→F3;本次3,累计8 7. 下:F3→F4;本次1,累计9 8. 下:F4→F5;本次1,累计10 9. 下:F5→F6;本次1,累计11 10. 左:F6→E6;本次3,累计14
按照本题计分规则,上面这条路线用了10次操作,总代价为14。路线中方向改变2次,所以总价为10+2×2=14。不计转向时的最少步数是8,与这里的优化目标不同。
怎样确认答案
答案通过按累计代价从小到大展开合法状态核对。同一位置若带有不同钥匙、收集进度、开关状态、时刻、电量、朝向或箱子位置,只保留本题实际需要的状态信息。只有到达完全相同的状态,较高代价记录才可舍弃。所有操作代价都大于零,因此首次取出的完成状态给出本规则下的最低总价;可能存在其他并列最优路线。
动手复核时,先在A2标出初始状态,沿逐步记录逐格检查墙、边界和机关条件。到E6附近也不要省略最后一次检查。然后任选一处普通空地临时改成墙,重新判断原路线是否还成立;答案变化要从被改变的连接解释,不要把原解直接搬到新图。
