#include #include #include "maze.h" #include #include int paths(char* maze, int journey, int size){ printf("journy je:%d\n",journey); if(journey == size*size-1){ maze[journey]= '*'; return 1; } if(journey >= 0 && journey <= (size*size) && maze[journey]==' '){ maze[journey] = '*'; //Pohyb dole if(journey < (size * size) - (size)){ puts("dole"); if(paths(maze, journey+size, size)){ return 1; } } //Pohyb vpravo if((journey+1)%size!=0) { puts("vpravo"); if (paths(maze, journey + 1, size)) { return 1; } } //Pohyb hore if(paths(maze, journey-size, size)){ return 1; } //Pohyb vlavo if((journey%size)!=0){ puts("vlavo"); if(paths(maze, journey-1, size)) return 1; } maze[journey] = ' '; return 0; } return 0; } int solve_maze(char* maze, int size){ return paths(maze, 0, size); }