Question: Write a function void solveMaze (vector maze, int x, int y) {} that takes in a maze and the end destination and the output has

Write a function void solveMaze (vector<vector<int>> maze, int x, int y) {} that takes in a maze and the end destination and the output has to print the coordinate path of the solved maze.

You will use a stack to solve a maze. The input is an array of is and Os and the row and column of the destination. 1 means that the block can be used for a path to the destination and 0 means it cannot. The beginning of the path is 0, 0. The output is the series of coordinates (row, column) of the path to the destination. Your code will be checked to ensure that you used a stack.

The path can proceed up, down, left or right but not diagonally.

The main method will read in the input and place it into an array. It will pass the array and the destination into a method called solve Maze. You write the method solve Maze.

Sample Input 1:
1 0 1 1
1 1 1 0
0 1 0 1
1 1 1 1
23

Sample Output 1:
(0, 0) -> (1, 0) -> (1, 1) -> (2, 1) -> (3, 1) -> (3, 2) -> (3, 3) -> (2, 3)

Step by Step Solution

3.45 Rating (158 Votes )

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock

To solve this problem of finding a path in a maze using a stack we can perform a depthfirst search DFS starting at the position 0 0 Here is a stepbyst... View full answer

blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Document Format (2 attachments)

PDF file Icon

609a990bb01a8_30792.pdf

180 KBs PDF File

Word file Icon

609a990bb01a8_30792.docx

120 KBs Word File

Students Have Also Explored These Related Programming Questions!