#P1522. N-Credible Mazes

N-Credible Mazes

描述
一个nn-交点定义为nn维空间(nn为正整数)中所有坐标均为非负整数的位置。例如,位置(1,2,3)(1,2,3)表示三维空间中的一个nn-交点。如果两个nn-交点的维度相同,并且它们的坐标在恰好一个维度上相差11,则称它们为相邻。例如,(1,2,3)(1,2,3)(0,2,3)(0,2,3)(2,2,3)(2,2,3)(1,2,4)(1,2,4)相邻,但与(2,3,3)(2,3,3)(3,2,3)(3,2,3)(1,2)(1,2)不相邻。一个nn-有趣空间定义为相邻nn-交点之间的路径集合。

最后,一个nn-可信迷宫定义为:一个nn-有趣空间,加上该空间中的两个特定nn-交点,其中一个被指定为起点nn-交点,另一个被指定为终点nn-交点。

输入
输入文件包含一个或多个nn-可信迷宫的描述。描述的第一行指定nn,即nn-有趣空间的维度。(对于本题,nn不超过1010,且所有坐标值均小于1010。)下一行包含2n2n个非负整数,前nn个表示起点nn-交点(按维度从低到高排列),后nn个表示终点nn-交点。接下来是若干行,每行包含2n2n个非负整数,表示nn-有趣空间中相邻nn-交点之间的路径。列表以仅包含1-1的一行结束。文件中可能有多个迷宫描述。输入以维度为00的行结束,表示输入终止,其后没有更多数据。

输出
对于每个迷宫,输出它在输入中的位置编号,例如第一个迷宫为“Maze #1”,第二个为“Maze #2”,依此类推。如果可以通过nn-有趣空间从起点nn-交点移动到终点nn-交点,则在同一行输出“can be travelled”;否则输出“cannot be travelled”。

输入样例 1

2  
0 0 2 2  
0 0 0 1  
0 1 0 2  
0 2 1 2  
1 2 2 2  
-1  
3  
1 1 1 1 2 3  
1 1 2 1 1 3  
1 1 3 1 2 3  
1 1 1 1 1 0  
1 1 0 1 0 0  
1 0 0 0 0 0  
-1  
0  

输出样例 1

Maze #1 can be travelled  
Maze #2 cannot be travelled  

来源
Greater New York 2000