1、走迷宫M*n 格的迷宫,1 表示可以走,0 表示不可以走读入:m*n 个数据和起始点、结束点。先要求找出所有克星的道路,要求所有的路中没有重复的店,走失只能是上下左右四个方向。如果一条路都不行,则输出-1。第一行是两个数 m 和 n(m,n”表示连接没有路径输出-1样例输入:5 41 1 0 01 0 0 00 1 1 01 1 0 11 1 1 11 15 4样例输出:-1样例输入 2:5 41 1 0 01 1 1 10 1 1 01 1 0 11 1 1 11 15 4样例输出 2:(1,1)-(1,2)-(2,2)-(2,3)-(3,3)-(3,2)-(4,2)-(4,1)-(5,1)
2、-(5,2)-(5,3)-(5,4)(1,1)-(1,2)-(2,2)-(2,3)-(3,3)-(3,2)-(4,2)-(5,2)-(5,3)-(5,4)(1,1)-(1,2)-(2,2)-(3,2)-(4,2)-(4,1)-(5,1)-(5,2)-(5,3)-(5,4)(1,1)-(1,2)-(2,2)-(3,2)-(4,2)-(5,2)-(5,3)-(5,4)(1,1)-(2,1)-(2,2)-(2,3)-(3,3)-(3,2)-(4,2)-(4,1)-(5,1)-(5,2)-(5,3)-(5,4)(1,1)-(2,1)-(2,2)-(2,3)-(3,3)-(3,2)-(4,2)-(5,2
3、)-(5,3)-(5,4)(1,1)-(2,1)-(2,2)-(3,2)-(4,2)-(4,1)-(5,1)-(5,2)-(5,3)-(5,4)(1,1)-(2,1)-(2,2)-(3,2)-(4,2)-(5,2)-(5,3)-(5,4)#includeusing namespace std;int main()char names2050;int count=0;for(;)char temp50;cintemp;if(strcmp(temp,“#“)=0) break;int i;for(i=0;ii;j-)strcpy(namesj,namesj-1);strcpy(namesi,temp);count+;break;else if (res=0)break;if(i=count)strcpy(namescount,temp);count+;for(int i=0;icount;i+)coutnamesiendl;return 0;