write a 2d int [] [] maze solving algorithm
Sigiloso
A DFS/BFS should suffice Assuming: (0,0) is start and (n-1,n-1) is the end. Spaces represent places that can be occupied, # means blocked grids. int moves[][2] = { 0,-1, 0,1, -1,0, 1,0 }; bool valid(char maze[][50], int r, int c, int n ) { if ( r=n || c>= n ) return false; if ( maze[r][c] == '#' ) return false; return true; } bool DFS(char maze[][50], int r, int c, n) { if ( r== n-1 && c == n-1 ) return true; maze[r][c] = '#'; int i; int newr, newc; for(i=0;i<4;i++) { newr = r + m[i][0]; newc = c + m[i][1]; bool solved= false; if ( valid(maze,newr,newc,n) ) solved = DFS(maze,newr,newc,n); if ( solved ) return true; } return false; } bool Solvable(char maze[][50], n ) { return DFS(maze, 0,0, n); }