每个阶数都有魔法六边形
数字19有什么特别之处?上个月在YSDA校友之间的一个对话中提出了这个问题,当时学校满19岁。有人指出19是一个孪生素数。另有人则回复说19是唯一的非平凡正常魔法六边形中的单元格数量。等等,什么是“魔法六边形”?让我们从这里开始。魔法方块和魔法六边形你可能知道魔法方块。魔法方块是一个数字的正方形网格,其中每一行、每一列和两个主对角线的和都等于同一个总数,称为魔法常数。我们通常还要求数字是连续的 - 通常从 $1$ 到 $n^2$ - 并称之为正常魔法方块。否则,我们可以简单地在每个单元格中放入相同的数字,那将是填充正方形非常无聊的方式。魔法方块已知千年,现在非常成熟。我们已经有算法可以构造每个阶数 $n>2$ 的正常魔法方块。魔法六边形将同样的理念应用于六边形网格。它的单元格在三个方向上形成直线,并且每条这样的线的和必须相等。与方块一样,魔法六边形称为正常如果它包含从 $1$ 到 $3n^2-3n+1$ 的连续数字,这是阶数为 $n$ 的六边形中单元格的总数。上面你可以看到存在的唯一非平凡正常魔法六边形 - 除了它自己的旋转和反射外。证明过程很简单。在三个方向的每一个,单元格被划分为 $2n-1$ 条线。因此,所有数字的和必须能被 $2n-1$ 整除。对于每个阶数 $n>3$,从 $1$ 到 $3n^2-3n+1$ 的数字和未能通过这个整除测试。那么,故事到这里结束就没有趣味了。为了让事情更有趣,让我们看看所谓的异常魔法六边形。在这里我们放松一个限制:网格上的数字仍然必须是连续的,但它们不再需要从 $1$ 开始。这一小的放松突然允许新的解出现。然而,找到它们却不容易。与魔法方块不同,没有公式化的构造或确定性算法。唯一已知的方法是徘徊在一个极其庞大的可能排列的搜索空间中。根据维基百科,截至2026年7月,已知最大的解是由Klaus Meffert在2024年发现的阶数为 $n=9$ 的六边形。那么……是什么让这些解如此难以找到?我们试试吧!第一章:观察(用人脑)两个独立限制之间存在明显的紧张关系:数字必须是连续的;所有的线和必须相等,尽管这些线的长度不同。我发现的先前解决方案表明,人们已经尝试了几种搜索算法,并可能对它们进行了良好的优化。这让我想到,如果我想推动这一领域的发展,我应该关注的是使搜索空间更小,而不是使搜索速度更快。观察:反对称六边形简单得多首先,让我们将网格上的数字限制在对称区间 $-K, ext{到}K$ 的某个 $K$。如果所有的线和相等,这相当于要求每个线的和为零。其次,将 $0$ 放在正中心,并要求在180度旋转下彼此对面的单元格包含相反的值。如果一个单元格包含 $x$,则其对面单元格包含 $-x$。注意,看有多少限制消失。每条穿过中心的线的和自动为零,因为其值会成对相互抵消。每条其它线都有一条对面线,包含的数为相反数。如果其中一条的和为零,则另一条也是。当然,简化限制引入了风险:或许没有解能完全满足额外的对称性。在这一点上,反对称性只是一个合理的搜索起点,遵循“醉汉原则”。但一旦我开始思考零和六边形,另一种结构便出现了。观察:每一个零和六边形都是由同一个6点环构成考虑任何六边形网格,无论是零和还是非零和。取围绕任意内部点的六个单元格,并添加交替模式 [-1,+1,-1,+1,-1,+1].保持中心单元格不变。每一条穿过该环的直线要么没有贡献,要么有两个相反的贡献,$+1$和$-1$。因此,它的和保持不变。我们可以在不改变任何一条线和的情况下添加这个模式的任何倍数。这些局部交替环形成一个基础:每个零和六边形都可以作为它们的唯一线性组合构建。我将省略证明以简洁,但这个想法相当直接。从外层开始,选择环系数来抵消其单元格,然后逐层剥离,继续向内进行归纳。因此,一个阶数为$n$的零和六边形具有两个等价表示:它的可见单元格值;一个阶数为 $(n-1)$ 的潜力场,记录它包含的每个局部环有多少。潜力场表示也满足每个线和的限制。
本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。
☕请我喝杯咖啡