作业帮 > 数学 > 作业

一个N*M的棋盘,右下方有一个棋子,两人轮流走,可以走到上下左右相邻的未走过的格子,不能走则输,谁胜?

来源:学生作业帮 编辑:拍题作业网作业帮 分类:数学作业 时间:2024/04/27 00:58:18
一个N*M的棋盘,右下方有一个棋子,两人轮流走,可以走到上下左右相邻的未走过的格子,不能走则输,谁胜?
棋盘格子为奇数则后手胜(1*1 后手直接胜)
棋盘格子为偶数则先手胜(1*2 先手走一步就胜)
求详细证明.
有可能走不完棋盘啊,补充下 这两人的智商足够高
这是棋盘对弈的问题,可使用配对解法
N*M定义为N行M列
若棋盘格子为奇数,则N和M均为奇数.设为N*M=2k+1
右下方的棋子已占一个格,还剩下2k个格子.其中最下面一行有M-1个格子,为偶数,剩下N-1行,为偶数
因此,可以把剩下的2k个格子两两配对分成k个1×2的小矩形
这时,先手总是领先进入某一个1×2小矩形的第一个格,后手总可以随之进入这个小矩形的第二个格.最后必然先手先无法移动这个棋子,先手输.后手必取胜
若棋盘格子为偶数,设为N*M=2k
将这2k个格子两两配对分成k个1×2的小矩形
右下方的棋子必在某个1×2的小矩形的一个格子中.先手将棋子走入这个1×2的小矩形的另一个格子中.这时还有k-1个1×2的小矩形,每个小矩形中都有两个小方格.这时该后手走,后手总是领先进入剩下的某个1×2小矩形的第一个格,先手就可以随之进入这个小矩形的第二个格.最后必然后手先无法移动这个棋子,后手输.先手必取胜
所以
棋盘格子为奇数则后手胜
棋盘格子为偶数则先手胜
=================
注:将棋盘格子两两配对成为若干个1×2的小矩形是解决本题的关键!
有什么不懂的再Hi我吧
一个N*M的棋盘,右下方有一个棋子,两人轮流走,可以走到上下左右相邻的未走过的格子,不能走则输,谁胜? 有人说:人生就像一个棋盘,棋子就是我们走过的地方.当棋盘走满了以后,人生就到了尽头? 中国象棋盘中的一个马,走20步,最多可以走到多少个不同的位置点?有没有好的推算方法? 一道C语言动态规划题描述 假设有一张n*n个方格的棋盘以及一个棋子.必须根据以下的规则把棋子从棋盘的底边移动到棋盘的顶边 过河卒救急棋盘上A点有一个过河卒,需要走到目标B点.卒行走的规则:可以向下、或者向右.同时在棋盘上C点有一个对方的马,该 【问题描述】棋盘上A点有一个过河卒,需要走到目标B点.卒行走的规则:可以向下、或者向右.同时在棋盘上C点有一个对方的马, 有21枚棋子,两人轮流走,规定每人每次至少取走1-3枚,谁取得最后一个棋子谁输.先取有办法赢吗? 盒子里有8个红棋子和5个黄棋子,两人一组,轮流摸棋子,摸到一个记录下来,再放回去重摸,每人各摸20次.你能设计一个公平的 请问一个数学题一个象棋盘有64个格子,在第一个格子放1粒米,在第二个格子放2粒米,第三个格子放4粒,到后面每一个格子的粒 在8*8的棋盘上让甲先将一枚棋子放在最下面一个的某一格中,然后甲乙二人开始轮流移动棋子要求乙先甲后, 用c++编程:马步遍历问题:已知国际象棋棋盘有8×8共64个格子.设计一个程序,使棋子从某位置开始跳马,能够把棋盘上的格 一枚棋子放在七角棋盘的第0格.现依反时针方向移动这枚棋子,且依次走1.2.3…,N…格.