华容道

传奇的中国滑块逃脱谜题——移开众将,护送曹操从底部出口逃走。12 个经典布局、求解器验证的最优步数、排名计分。

华容道怎么玩

华容道是闻名世界的滑块逃脱谜题,西方称之为 Klotski。十个大小不一的木块挤在一个 4×5 的小框里,只留两个空格,你的任务是不断滑动它们,直到那块 2×2 的大块——枭雄曹操——从棋盘底部中央的缺口逃出去。任何棋子都不能拿起或旋转:只能上下左右滑入空格。听起来像儿童玩具,实际上却是有史以来最深奥的滑块谜题之一——经典布局即使走得完美无缺也需要 90 步。本版本收录十二个经典家族布局,分为简单、中等、困难三档,每个布局都附有经计算机证明的最优步数供你挑战,还配有步数统计、计时器、无限撤销和排名计分。

游戏目标

把其他棋子滑到一边,让琥珀色的 2×2 曹操块到达棋盘底部中央、盖住标记出口正上方的两个格子。只有曹操能逃脱——所有武将和小兵都只是需要挪开的障碍。尽量贴近布局的最优步数并快速完成:浪费的步数和秒数越少,得分越高。

典故:败走华容道

这个谜题演绎的是中国三国故事中流传最广的桥段之一。公元 208 年赤壁之战惨败后,北方枭雄曹操带着残兵败将沿狭窄泥泞的华容道仓皇逃命。关羽早已率一小队兵马在此设伏——本是将曹操一举歼灭的绝佳机会。但关羽感念曹操昔日恩义,义字当头,最终放走了这个宿敌。谜题把这段故事刻进了木头:曹操是奋力突围的大块,关羽是常常横亘在他必经之路上的长条横块,四员武将和四个小兵则挤满了整条山道。同样的机械谜题在西方名为 Klotski(源自波兰语“木块”一词),在日本则称“箱入り娘”。

棋盘与棋子

棋盘宽 4 列、高 5 行。传统棋子共十枚:一个 2×2 的主角(曹操)、一个 2×1 的横将(关羽)、四个 1×2 的竖将(张飞、赵云、马超、黄忠)和四个 1×1 的小兵——恰好留下两个空格供腾挪。从选择器里挑选十二个开局布局之一,按难度分组,每个布局的名字旁都标着它的最优步数。流传数百年的传统布局——比如著名的“横刀立马”——保留了它们的历史名称;其余是我们用同一套经典棋子自创的排布。所有收录的布局都经过穷举式计算机搜索验证必定有解。计时器从你的第一次滑动才开始,而不是棋盘出现时,所以你可以慢慢研究局面。

如何移动棋子

  • 拖动:按住棋子朝空格方向拖——它一次滑一格,拖得越远,只要有空间就会继续滑。
  • 点选加方向键:点一下棋子选中它(蓝色框),再用方向键或 WASD 滑动。快速点击一个只有一个合法方向的棋子,它会立即朝那个方向滑动。
  • 棋子只能上下左右滑入空格,不能旋转、不能拿出棋盘、不能重叠——旁边没有空格的棋子根本动不了。
  • 步数按经典规则统计:同一棋子沿一条直线连续滑动若干格只算一步。改变方向,或中间动了别的棋子,就开始新的一步。计数器始终把你的步数与布局的最优步数并排显示。
  • 走乱了?撤销可以一步步回退(步数计数器也随之回退,即使在合并的多格滑动中间也一样),重新开始则把布局恢复到初始位置,步数和计时全部清零。

获胜与计分

曹操的方块一旦占据最下两行的中间两列——稳稳停在标记出口之上——你就赢了。横幅会显示你的步数与最优步数的对比、用时和得分,得分自动提交到该布局难度(简单、中等或困难)对应的排行榜。本设备上的最佳成绩按难度分别保存,登录后你的成绩还会进入全球排名。

策略技巧

  • 着眼于那两个空格,而不是棋子。每个局面只有寥寥几步合法滑动;每走一步前先想:空格这个“气泡”要游到哪里,下一个大块才能动。
  • 曹操挪动极其缓慢——他需要一条两格宽的通道。游戏的大部分时间都花在把小兵和武将摆渡到两侧,为他在前方一侧一侧地挖出这条通道。
  • 横着的关羽通常是关键:他和曹操一样需要 2 格宽的空间,还总爱堵在出口前。尽早决定关羽最终落脚何处——通常是贴着底边或侧墙——先把他送过去,再让曹操下来。
  • 小兵是你最灵活的棋子:1×1 的方块能塞进大棋子用不了的角落。把他们停在死角里,并在大块需要通过时让两个空格保持相邻。
  • 想冲击最优步数?利用计步规则:一次直线多格滑动只算一步,所以要规划长滑而不是分成两次推;撤销尽管用,计数器会跟着回退。

常见问题

得分是怎么计算的?

得分 = max(1, 12000 − 秒数 − (步数 − 最优步数) × 15)。你从 12000 分起步;每过一秒扣 1 分,每多走一步(超出该布局经证明的最优步数)扣 15 分,得分永远不会低于 1。以最优步数完成时,得分就是 12000 减去用时。分数越高越好,上限 99999,且每个难度(简单、中等、困难)都有独立排行榜。

步数究竟是怎么算的?

按华容道的经典惯例:一步指一个棋子沿一个直线方向滑动任意格数。把一个小兵沿通道连续推两格,计数只加一,不加二。拐弯,或中间动了别的棋子,就算新的一步。每个布局旁标注的最优步数用的正是同一条规则,所以对比始终公平。

“最优步数”从哪里来——所有布局真的都有解吗?

是的。十二个布局每一个都经过穷举式广度优先计算机搜索,遍历所有可达局面。搜索既证明了解的存在,也求出了上述计步规则下真正的最少步数;印在布局名旁、用于计分公式的正是这个最小值。没有死局,也没有拍脑袋的数字。

我看到资料说经典布局最少 81 步,这里却写 90,哪个对?

都对——它们采用不同的计步惯例。“横刀立马”著名的 81 步,是把一次连续滑动中拐弯也算作一步得出的。本游戏及其求解器采用更严格的直线规则:拐一次弯算两步,同一布局的最少步数因此是 90。游戏内的计数器和显示的最优值始终使用同一规则,所以你的对比是一致的。

我彻底卡住了,怎么办?

华容道的局面永远不会真正走死——有两个空格,总有棋子能动;而且所有收录布局都被证明有解,从你能到达的任何局面出发都必然存在通往出口的路线。如果把自己绕晕了,用撤销回退最近几步,或者重新开始回到开局。记住:曹操需要底部中央的两个格子同时空出——修出这条最后的通道才是真正的谜题。

这个游戏可以离线玩吗?

可以。页面加载完成后,一切——布局、滑动、计步、计时和计分——都在浏览器本地运行,无需网络。离线获得的分数保存在设备上,下次联网并登录时自动上传。