题目设置
在8×8方格板上,每块骨牌覆盖两个共边相邻的小格,不能重叠、不能越出棋盘。拿走左上角和右下角两个格子,问其余62格能否恰好由31块骨牌覆盖。
棋盘按国际象棋方式黑白相间染色,左上角指定为黑格。所有骨牌摆放方向不限,但必须覆盖一对共边格;旋转骨牌不改变规则,也不允许切割或弯折。
也可将黑白格画成坐标奇偶标记。左上格坐标和为偶数,右下格坐标和也为偶数,二者同色;相对两角并非一个黑一个白。去掉后剩余区域中的黑白差无法被任意骨牌消除,这让不可能性证明覆盖所有摆法。
先计算颜色数量
完整棋盘每一行有四黑四白,共八行,因此黑格和白格各32个。两个被移除的格位于相对角,横纵坐标差均为奇数,格子颜色相同;具体按左上角为黑的染法,它们都为黑格。
拿走两黑格后,剩下30黑格与32白格。剩余格总数62,面积看似正好能被每块二格的骨牌覆盖,但仅检查面积还不足以判断能否铺满。
还可用黑白差值作检查:移除前差为0,拿走两个黑格后黑格比白格少2。每放一块骨牌,黑白差始终维持不变,因为它同时占用各一种颜色;最终若铺满,剩余格子必须被全部配成黑白对,但数量已经不相等。
骨牌带来的限制
任意两个共边相邻格颜色相反,这是棋盘着色的定义。因此每一块骨牌无论横放或竖放,必定占一个黑格和一个白格。31块骨牌完整铺设必然覆盖31黑格、31白格。
但待铺区域颜色数为30与32,不符合每块骨牌贡献一黑一白的总计结果。无论怎样移动骨牌,覆盖后两种颜色数量都必须相等,不能用位置变化抵消数量差。
可以把每个格子的颜色编码为0或1,每块骨牌总贡献1个0和1个1,颜色差恒为零。待铺区域的颜色差为−2,任何骨牌拼法都无法把这个差值改成0;这就是与具体排法无关的代数版本。
答案与反例检查
答案是不能铺满。矛盾不是面积不足:格子数恰为62,数量也等于31块骨牌可覆盖的格数;障碍来自染色数量不平衡。这个证明对所有摆法同时成立,因此无需逐一尝试铺设。
若移去的是一黑一白两格,颜色计数会各剩31,染色论证便不再能证明不可能;这不代表一定可以铺满,只表示该不变量没有给出障碍。题目指定相对角,避免了这个差别。
面积总量是必要检查,但不充分:62个格子确实能被31块覆盖,颜色不变量却说明具体铺法不存在。这类反例提醒我们,先检查更精细的结构限制,不能只因总面积匹配就认定可铺。
一般解题提示
这类棋盘题使用不变量:操作过程会移动物件,却不会改变某种总量关系。先找骨牌每次必然带来的颜色配比,再比较剩余区域是否满足。
评分规则:回答“不能”,并指出去掉同色角后黑白格相差2,且每块骨牌覆盖一黑一白,即为完整解答。单说格子数是偶数不足以构成证明。
染色证明属于必要条件检查:只要任何可行铺法都必须满足黑白格相等,而题面提供的区域不满足,就足以否定全部铺法。证明不需要展示骨牌摆放,也不用限制骨牌的摆放方向。反过来,若颜色相等,仍需实际构造铺法,或使用其他不变量,才能证明一定可铺。