mathe 发表于 2008-12-24 08:08:02

超级皇后问题

n皇后问题是说在n*n的国际象棋棋盘上放置n个皇后,使得她们之间不会相互控制。
其中每个皇后会控制她所在的行,列和斜线。
而考虑到n*n棋盘中斜线数目比行列几乎多一倍,我们可以定义超级皇后,
她控制她所在的行和列,而且所在的斜线以及相邻的斜线(也就是每个方向控制三条斜线)
请问n*n棋盘上做多可以放置多少个超级皇后,使得她们之间不会相互控制?

无心人 发表于 2008-12-24 08:30:39

你拿haskell练下手吧

无心人 发表于 2008-12-24 08:31:45

另外?

只能控制斜线三行?
超级皇后喜欢歪的斜的?

gxqcn 发表于 2008-12-24 08:55:49

原帖由 mathe 于 2008-12-24 08:08 发表 http://bbs.emath.ac.cn/images/common/back.gif
n皇后问题是说在n*n的国际象棋棋盘上放置n个皇后,使得她们之间不会相互控制。
其中每个皇后会控制她所在的行,列和斜线。
而考虑到n*n棋盘中斜线数目比行列几乎多一倍,我们可以定义超级皇后,
她控制她所在的行 ...

感觉应该是:斜线总数=行列总数。

皇后 可以同时控制行列上各 n 个格子,但对斜线控制的格子数确随其位置不同而不同。
如果重新定义其功力:让她可以控制行、列、及两条泛对角线(即可以打折的斜线)上各 n 个格子,合计共 4*n 个格子(包含其自身位置),情形会怎样?

无心人 发表于 2008-12-24 08:58:34

会反射攻击啊?

gxqcn 发表于 2008-12-24 12:33:31

我的泛对角线的意思不是反射攻击,而是当触底后再从顶部按相同的方向延续,

也就是说,将方阵的最上行平移到最下面,或将最左列平移到最右边,经过有限次的这种轮换变换,所有的“泛对角线”均可成为常规意义的对角线。

如果给棋盘建立坐标(无论原点是否为0),设皇后的位置为:$(a,b)$,则
可控制的水平方向的格子满足:$y-=b\quad(mod n)$
可控制的竖直方向的格子满足:$x-=a\quad(mod n)$
可控制的“\”方向的格子满足:$x-y-=a-b\quad(mod n)$
可控制的“/”方向的格子满足:$x+y-=a+b\quad(mod n)$

扯远了。也许楼主的原题更有嚼头。
页: [1]
查看完整版本: 超级皇后问题