贪婪+回溯---迷宫问题--求解一条路径
//求一条路径 #include<stdio.h> #include<stdlib.h> #define R 7//行 #define C 8//列 int M[R+2][C+2]={{1,1,1,1,1,1,1,1,1,1},{1,0,0,0,0,0,1,1,1,1},{1,0,0,0,0,1,1,1,1,1}, {1,1,1,1,0,0,0,0,0,1},{1,0,0,1,1,0,0,0,0,1},{1,0,0,0,1,1,1,0,0,1}, {1,1,0,0,0,1,1,0,0,1},{1,0,0,0,0,0,0,0,0,0},{1,1,1,1,1,1,1,1,1,1}}; int T[R+2][C+2]={0};//标记试探过的路径 int Move[4][2]={{1,0},{0,1},{-1,0},{0,-1}};//分别表示向南、东、北、西 int tag; void Print() { printf("迷宫为:\n"); for(int i=1;i<R+1;i++){ for(int j=1;j<C+1;j++){ printf("%d ",M[i][j]); } printf("\n"); } } int Maze(int x,int y) { if(x==R&&y==C){ return 1; } for(int i=0;i<4;i++){//遍历四个方向