//2008A Dennis #include #include using namespace std; const int MAXINT=2147483647; const int MAZESIZE=100; const int WALL=-1; int maze[MAZESIZE][MAZESIZE]; void getMaze(int maze[][MAZESIZE],int rows,int cols) { string str; for (int r=0;r>str; for (int c=0;c=cols || rowstart>=rows || colstart<0 || rowstart<0 || //out of bounds maze[rowstart][colstart]==WALL || //wall path>=minpath || //a shorter path already found path>=maze[rowstart][colstart]) return minpath; //a shorter path was already found for this location, back away! if (rowstart==rows-1 && colstart==cols-1) //reached the end of maze { if (path>row>>col && row!=0) { getMaze(maze,row,col); cout<