推箱子死锁:四种需要识别的局面
死锁是指不存在任何合法步骤能让全部箱子到达目标。Crate Bloom 只在静态证明成立时显示“已死锁”,无法证明的贴墙风险只显示“危险”。
非目标角落
箱子进入两面互相垂直的墙角后,人物无法站到墙外把它推出,因此不可恢复;目标角落是明确反例,目标上的箱子不能被误判。
已证明的墙边区域
系统从目标反向计算箱子理论上可达的格子。普通贴墙不等于死锁;只要沿墙仍有合法路线到目标,就必须保持可解判断。
冻结的 2×2
当 2×2 区域完全由墙和箱子占据,其中至少一个箱子不在目标上,整体无法移动。松散或可拆开的箱群不能只因拥挤而判死锁。
如何处理
撤销到进入陷阱前的一推,找到下一次有效推动所需的站位。若只显示“危险”,应检查路线,而不是直接认定失败。