首页 > 用户发贴区 > 编程问题提问区 > 关于六数码问题和堡垒问题的迷惑(求高手)
2009
03-18

关于六数码问题和堡垒问题的迷惑(求高手)

运行环境:XP+Turbo 2.0


 


六数码问题


时限:1000ms 内存限制:10000K  总时限:3000ms


描述:


现有一两行三列的表格如下:

A B C
D E F

123456六个数字分别填入ABCDEF格子中,每个格子一个数字且各不相同。每种不同的填法称为一种布局。如下:

1 3 5
2 4 6
布局1

2 5 6
4 3 1
布局
2

定义α变换如下:把A格中的数字放入B格,把B格中的数字放入E格,把E格中的数字放入D格,把D格中的数字放入A格。

定义β变换如下:把B格中的数字放入C格,把C格中的数字放入F格,把F格中的数字放入E格,把E格中的数字放入B格。

问:对于给定的布局,可否通过有限次的α变换和β变换变成下面的目标布局:

1 2 3
4 5 6
目标布局


输入:


本题有多个测例,每行一个,以EOF为输入结束标志。每个测例的输入是16这六个数字的一个排列,空格隔开,表示初始布局ABCDEF格中依次填入的数字。


输出:


每个输出占一行。可以转换的,打印Yes;不可以转换的,打印No


输入样例:


1 3 5 2 4 6
2 5 6 4 3 1


输出样例:


No
Yes


 


堡垒问题


时限:1000ms 内存限制:10000K  总时限:3000ms


描述:


城堡是一个4×4的方格,为了保卫城堡,现需要在某些格子里修建一些堡垒。城堡中的某些格子是墙,其余格子都是空格,堡垒只能建在空格里,每个堡垒都可以向上下左右四个方向射击,如果两个堡垒在同一行或同一列,且中间没有墙相隔,则两个堡垒都会把对方打掉。问对于给定的一种状态,最多能够修建几个堡垒。


输入:


每个测例以一个整数n1<=n<=4)开始,表示城堡的大小。接下来是n行字符每行n个,‘X’表示该位置是墙,‘.’表示该位置是空格。n等于0标志输入结束。


输出:


每个测例在单独的一行输出一个整数:最多修建堡垒的个数。


输入样例:


4
.X..
….
XX..
….
2
XX
.X
3
.X.
X.X
.X.
3

.XX
.XX
4
….
….
….
….
0


输出样例:


5
1
5
2
4


因为过几天就要考试,急求。要求完全文件输入,不要任何人工输入。谢谢。


关于六数码问题和堡垒问题的迷惑(求高手)》有 1 条评论

  1. dgy516 说:

    没人吗?  自己先顶下!

留下一个回复