P12139 [蓝桥杯 2025 省 A] 黑白棋 题解
123ytq666
·
·
题解
这是一道无需任何编程基础就可以完成的题目,只要有耐心,就一定可以通过。
不扯了,进入正题。
题目要求:
用黑白棋填满棋盘,要求:
- 每行每列都要有三个黑棋和三个白棋。
- 在棋盘的任何一行或一列中,不允许出现“黑黑黑”或“白白白”。
- 每一行的棋子排列方式必须是唯一的,不能与棋盘中的任何其他行完全相同。
- 每一列的棋子排列方式也必须是唯一的,不能与棋盘中的任何其他列完全相同。
- 行可以与列相同,无需满足行列间的唯一性。
棋盘
注:本题解使用黄色格子为初始填入的棋子,且 1 代表黑棋,0 代表白棋,(1,2) 表示第 1 行第 2 列。
解题思路
第一步
可以直接看出 (1,3) 和 (3,4) 都是黑棋。如果是白棋,那么就违反了第二条规定。
第二步
通过观察,可以发现 (3,1) 必须是黑棋。如果是白棋,那么 (3,2),(3,3),(3,4) 都是黑棋,违反了第二条规定。然后又可以发现 (2,1) 必须是白棋子。
现在的棋盘
第三步
可以发现,(6,4) 是黑棋,(6,3) 是白棋,因为 (6,4) 的黑棋与 (3,1) 的黑棋对角线对称,并且 (6,3) 的白棋与 (3,6) 的白棋呈对角线,展示见下图。
根据规则二,可以轻松判断 (6,1) 是黑棋,(6,6) 是白棋。
然后便可以发现,第 1 列已经有 3 个黑棋,所以,(4,1) 和 (5,1) 必须是白棋。
现在的棋盘
第四步(重点!)
如果我们假设 (5,2) 是白棋,那么 (5,4) 和 (5,5) 是不确定的,但如果 (5,2) 是黑棋,那么就可以确定 (5,4) 和 (5,5) 是白棋。
第五步
根据规则一,可以判断 (4,4) 是黑棋。再根据规则三,可以判断 (4,5) 也是黑棋。
可以发现 (4,3) 和 (4,6) 必须是白棋,否则违反了规则一。然后再在 (4,2) 填入黑棋。
现在的棋盘
第六步
根据规则一,可以看出 (1,6) 和 (2,6) 必须是黑棋,又发现 (1,5) 必须是白棋,再发现 (2,5) 必须是黑棋。
随后先后看出 (3,2),(2,2),(2,3),(3,3) 分别为白棋,黑棋,白棋,黑棋。
完成!
棋盘填好,最终结果如下图,检查规则三和规则四是否成立就可以提交了。