数学吧 关注:907,544贴子:8,818,217

中国象棋的棋盘上最少摆上几只马,能控制住棋盘所有的格子?

只看楼主收藏回复

  中国象棋的棋盘上最少摆上几只马,能控制住棋盘所有的格子?国棋象棋有这个问题。但中国象棋我好象没看到过。
  一个空的中国象棋棋盘(9*10的格子)。“马”按中国象棋马走“日”的走法,有“蹩马腿”。假设可往上面摆放上很多的只马,最少摆放多少只马,使得摆放好后,无论棋盘上哪一个空格,都至少被其中一只马攻击到?(我把它叫做“中国象棋马控棋盘”)。
  马走法是一直一斜,即先横着或直着走一格,然后再斜着走一个对角线,俗称“马走日”。马一次可走的选择点可以达到四周的八个点,故有八面威风之说。如果在要去的方向有别的棋子挡住,马就无法走过去,俗称“蹩马腿”。
  用数学描述:若现在马的位置是(x,y)。它可以攻击到的点:
(x±2,y±1) (当(x±1,y)有棋子时,攻击不到)
(x±1,y±2)   (当(x,y±1)有棋子时,攻击不到)


1楼2010-08-04 11:04回复
    图论?


    2楼2010-08-04 11:08
    回复
      2025-06-12 16:27:07
      广告
        这个问题,几年前我在QQ空间上就放出过答案。摆法应该有很多。有谁也放一放你的最少摆法?


      3楼2010-08-04 11:09
      回复
        肯定大于65610000吧


        IP属地:福建5楼2010-08-04 11:35
        回复
          一只天马就够了、、


          6楼2010-08-04 12:00
          回复
            这个问题挺有意思,马克一个


            8楼2010-08-04 13:12
            回复
              中国象棋是9*10的棋盘吧,另外马本身占据的格子算不算
              如果按照标准的黑白染色,每个马可以控制最多8个同种颜色的格子,这样的话要控制一种颜色的所有格子45个起码要6个马,还不知道能不能摆放出来


              IP属地:江苏9楼2010-08-04 13:35
              回复
                如果占据也算是攻击的话一个上界是27个马。


                10楼2010-08-04 13:58
                回复
                  2025-06-12 16:21:07
                  广告
                  回复:9楼中国象棋是9*10的棋盘。马本身所占据的格子,可认为已经被本身攻击到。
                  因为一个想法是:只要你往棋盘里的空格放上任一个子,都会被马吃掉。马本身所在的格子,已经放了子,不是空格。希望有网友贴出摆法来,印证一下我的答案。


                  11楼2010-08-04 14:50
                  回复


                    12楼2010-08-04 21:18
                    回复
                      先留个名,有空再跑程序


                      IP属地:广东13楼2010-08-04 21:22
                      回复


                        IP属地:浙江14楼2010-08-04 21:29
                        回复
                          回复:13楼
                          这个程序不太好写。想用动归是失败了,用A*估价函数又不太好找


                          15楼2010-08-04 21:56
                          回复
                            回复:15楼
                            确实不太好写。但现在不是编程比赛,不要求效率,半电脑半手工也行,找到的不是正解也没关系。只要能提供一个答案来,让大家参考。


                            17楼2010-08-04 22:35
                            回复