1. Engineering
  2. Computer Science
  3. language c hey i need help writing a function void...

Question: language c hey i need help writing a function void...

Question details

Language: C++

Hey, i need help writing 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 1s 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. write the method solveMaze It will pass the array and the destination into a method called solveMaze. You Sample Input1 1 0 1 1 11 1 0 0 1 0 1 2 3 Sample Output 1:The existing code is as follows...

#include <iostream>
#include <vector>
#include <string>
#include <sstream>
#include <stack>

using namespace std;

vector<vector<int>> getInput()
{
string line;
getline(cin, line);

string token;

int rowNum=0;
int colNum=0;
int size=0;
int currSize = 0;

int test;


//get size
stringstream lineStream(line);
while(lineStream >> token)
{   
size++;
}

//initialize 2D vector
vector<vector<int>> numbers(size, vector<int>(size, 0));

//read lines

for (int k = 0; k<size-1; k++)
{

stringstream lineStream2(line);
currSize = 0;
while(lineStream2 >> token)
{   

test = stoi(token);
numbers[rowNum][currSize] = test;
currSize++;
}
rowNum++;
getline(cin, line);

}
//do the last line
stringstream lineStream2(line);
currSize = 0;
while(lineStream2 >> token)
{   

test = stoi(token);
numbers[rowNum][currSize] = test;
currSize++;
}

return numbers;
}

void solveMaze(vector<vector<int>> maze, int x, int y)
{
//your code here
}

int main()
{
vector<vector<int>> maze;
maze = getInput();
int x;
cin >> x;
int y;
cin >> y;

solveMaze(maze, x, y);

return 0;
}

Solution by an expert tutor
Blurred Solution
This question has been solved
Subscribe to see this solution