#y1051. 迷宫问题
迷宫问题
设有一个M*N方格的迷宫,入口和出口分别在左上角和右下角。迷宫格子中分别放有0和1,0表示可通,1表示不能,迷宫走的规则如下图所示:即从某点开始,有八个方向可走,前进方格中数字为0时表示可通过,为1时表示不可通过,要另找路径。
输入例子:(从文件中读取数据)
8 8
0 0 0 1 1 0 1 0
1 0 1 1 0 1 1 0
0 1 0 0 1 0 0 1
0 0 1 1 0 1 0 1
0 1 0 0 0 1 1 0
0 1 1 1 1 1 0 1
0 0 1 1 1 0 1 1
1 1 0 0 0 0 0 0
入口:(1,1);出口:(8,8)
输出要求:找出一条 从入口(左上角)到出口(又上角)的路径(不能重复)。
(1,1)->(2,2)->(3,3)->(3,4)->(4,5)->(3,6)->(3,7)->(4,7)->(5,8)->(6,7)->(7,6)->(8,7)->(8,8)
现在给你一个n*n的方阵,请输出所有的路径,每个路径一行 如果没有路径,则输出-1
输入样例:
4 4
0 1 0 1
1 0 1 0
0 1 0 0
0 1 1 0
输出样例:
(1,1)->(2,2)->(1,3)->(2,4)->(3,4)->(4,4)
(1,1)->(2,2)->(1,3)->(2,4)->(3,4)->(3,3)->(4,4)
(1,1)->(2,2)->(1,3)->(2,4)->(3,3)->(3,4)->(4,4)
(1,1)->(2,2)->(1,3)->(2,4)->(3,3)->(4,4)
(1,1)->(2,2)->(3,3)->(2,4)->(3,4)->(4,4)
(1,1)->(2,2)->(3,3)->(3,4)->(4,4)
(1,1)->(2,2)->(3,3)->(4,4)
【提示】
1<m,n<100
按如下方向搜索