news 2026/6/28 3:14:54

马能否走遍棋盘的可达性证明

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
马能否走遍棋盘的可达性证明

而题目本身要求输出 个答案,仅输出就至少需要:

所以对于原题,BFS 已经达到最优复杂度量级。

不过,继续考虑两个问题:

  1. 如果只询问到某一个点的距离,是否存在直接公式?
  2. 是否存在马永远到不了的点?

显然这两个问题必须区分有限棋盘与无限棋盘。


一、无限棋盘上的单点最短距离公式

将起点平移到原点 ,目标点记为 。

由于马步关于坐标轴和直线 对称,只需令:

于是总有:

在无限棋盘上,最短步数为:

其他情况

其中先计算:

再按照奇偶性修正:

例如:

目标位移最少步数

这个公式中的三个限制

马的一步位移为:

首先,较大的坐标差每一步最多减少 ,因此:

其次,坐标绝对值之和每一步最多减少 ,因此:

所以:

最后,马每走一步,坐标和的奇偶性都会翻转。因为一步中坐标和的变化量一定是奇数:

因此,若走 步到达 ,必须满足:

所以,当 与 奇偶性不同时,还需要再加一步。

两个特殊点 与 属于距离过小造成的局部例外,需要单独处理。

例如:

因此从原点到 可以三步到达,但不可能更少。


二、为什么这个公式不能解决原题

上面的公式针对的是无限棋盘。

原题中的棋盘存在边界,而无限棋盘上的最短路径可能会暂时跳出矩形区域。

例如,在无限棋盘上:

所以从 到 可以两步到达。

但在 棋盘中, 已经越界,这条路径不合法。事实上,中心点 没有任何合法马步与其他位置连接。

从左上角出发时,距离表为:

因此:

无限棋盘上的最短距离有限棋盘上的最短距离

有限棋盘中,边界会改变整张马步图的结构,所以原题仍应使用 BFS。


三、无限棋盘上有没有永远到不了的点

没有。

这个结论可以直接通过生成元证明。

把所有整数格点组成的集合视为加法群:

马的一步能够产生的位移向量为:

记这些向量生成的子群为:

只需证明:

因为 与 生成整个 。

首先:

所以:

对应路径为:

其次:

所以:

对应路径为:

于是,对任意整数点 ,都有:

因此:

无限棋盘上,马可以到达任意整数格点。


四、尝试黑白染色

将棋盘按照 的奇偶性染成黑白两色。

马每走一步, 的奇偶性都会翻转,因此格子颜色也会翻转。

所以,如果目标点与起点同色,则所需步数一定为偶数;如果目标点与起点异色,则所需步数一定为奇数。

即:

但是,这只能限制步数的奇偶性,不能证明某个点不可达。

例如, 与原点异色,所以它必须经过奇数步到达;而它确实可以在三步后到达:

因此在无限棋盘上,染色法约束步数奇偶,但不产生不可达点。


五、有限矩形棋盘什么时候连通

考虑一个没有障碍物的 矩形棋盘,不妨设:

结论为:

的马步图连通,或且

换言之,除单格棋盘外,不连通的矩形棋盘只有:

下面分别证明。


六、 棋盘不连通

如果棋盘只有一行,马不存在任何合法移动。

因为马的一步至少需要跨越两行或三行,而棋盘中只有一行。

因此当 时,每个格子都是孤立点:

不连通


七、 棋盘不连通

如果棋盘只有两行,马的一步不可能让行号变化 ,否则会越界。

因此,合法移动只能满足:

行列

也就是说,列编号每次只能变化 :

于是列编号的奇偶性保持不变。

第 列第 列第 列第 列第 列第 列

从奇数列出发,永远到不了偶数列;从偶数列出发,永远到不了奇数列。

因此:

不连通

这里的不变量是:

列编号模的余数


八、 棋盘不连通

考虑中心点 。

从中心点出发,马无论走:

还是:

都会越界。

所以中心点没有任何邻点。由于马步可逆,也没有任何其他点能够到达中心点。

孤立点

因此:

不连通


九、 棋盘连通

下面给出一条经过全部十二个格子的合法路径。表格中的数字表示访问顺序:

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/28 3:14:33

建材工厂怎么线上获客?AI GEO 长效抢占工程采购流量

建材工厂全域线上获客破局:跳出竞价与展会内卷|牛橙网络顾佳薇团队实战导语佛山陶瓷、苏州防水、临沂板材、浙江管材、广东幕墙五大建材产业带数千家生产厂家、工程建材供应商,正陷入同质化获客困局。线下建材展、建材市场门店、工地地推成本…

作者头像 李华
网站建设 2026/6/28 3:11:47

Cloud Agent 开发笔记(1):V1从跑通到放弃

Vibe Coding,启动2026年1月,我在各种SNS上看到越来越多的关于Vibe Coding的经验分享。上家公司我曾对接过一些AIGC的场景,也了解过cursor、copliot这些工具,起初并未在意。但当我看到有人说“并发开10个Agent——5个写代码、3个测…

作者头像 李华
网站建设 2026/6/28 3:02:03

Codex 多 Worktree 并行开发:一个人同时修 5 个 Bug 的工作流

你还在一个分支上一个接一个地修 Bug? 用 Codex + git worktree,你可以同时开 5 个分支、5 个 Codex 并行修复、然后一起提 PR。 时间从 5 小时缩到 1 小时。 一、Worktree 是什么(30 秒理解) Git worktree 让你从同一个仓库同时 checkout 多个分支到不同的目录。 # 正常…

作者头像 李华
网站建设 2026/6/28 2:59:37

08 进度管理

08 进度管理2026-06-25 新建4-42 如何防止范围蔓延 核心定义 范围蔓延(Scope Creep):未经控制的项目范围扩大,表现为需求不断增加、功能持续叠加,导致进度延迟、成本超支。 范围蔓延的常见原因原因说明预防对策客户需求…

作者头像 李华
网站建设 2026/6/28 2:58:36

10 质量管理

10 质量管理2026-06-26 新建4.60 等级与质量 & 精确度与准确度 核心定义概念定义一句话质量产品/服务满足需求的程度“好不好”(符合要求适合使用)等级产品/服务的功能丰富程度“档次高低”(豪华版vs基础版)质量 vs 等级 低等…

作者头像 李华
网站建设 2026/6/28 2:58:16

芯片行业EMBA选型测评:行业分析与机构优选指南

一、引言:芯片行业高管EMBA选型核心痛点国内芯片产业进入国产替代与全球化布局双轨并行的关键阶段,行业技术迭代快、跨境合作频繁、资本运作密集,对企业管理者的综合能力提出极高要求。多数芯片企业创始人、核心高管出身研发、工艺、技术岗位…

作者头像 李华