图,在 6×7 的长方形棋盘的每个小方格的中心点各放一个棋子。如果两个棋子所在
的小方格共边或共顶点,那么称这两个棋子相连。现从这 42 个棋子中取出一些,使得棋盘
上剩下的棋子,没有五个在一条直线(横、竖、斜方向)上依次相连。请用数学的方法解决
最少取出多少个棋子才能满足要求?并说明理由。同时给出一种去掉棋子的方式。
提示:如果证明至少需要取出
k
个棋子。可采用的一种思路是:理论上证明取
k 1
个棋子
不能满足要求,而你确实找到一种取出
k
个棋子就可以满足要求的取法。另一种思路是采用
一种方法证明至少需要取
k
个棋子才能满足要求,而你确实找到一种取出
k
个棋子就可以满
足要求的取法。当然或许你还有别的思路。在这个具体问题中,请你只用数学的方法解决该
问题。
问题 2:二维一般问题
对问题 1 中使用数学证明的方法,只能解决规模很小的问题。而且针对不同的规模,所
使用的数学技巧会不同。这样就不具有一般性。如果现在需要你从一般性的问题考虑,你将
如何解决这个问题呢?一个很自然的想法是利用数学建模的方法建立一般模型,然后设计算
法或利用软件求解。基于此,请针对任意规模
m n
的棋盘,要求满足的条件与问题 1 相同。
问至少去掉多少个棋子,可以使没有五个在一条直线(横、竖、斜方向)上依次相连。并对
13×17 的长方形棋盘,给出具体的求解结果,并将最后结果给出直观的棋盘表格显示。
五连珠问题,C语言编程实现
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-