adding cs235

This commit is contained in:
dm
2016-04-06 20:46:10 -07:00
parent 8e52ce1982
commit cf99ec6565
178 changed files with 13079 additions and 0 deletions
+22
View File
@@ -0,0 +1,22 @@
#include "Factory.h"
#include "maze.h"
//You may add #include statments here
using namespace std;
/*
Unlike all other documents provided, you may modify this document slightly (but do not change its name)
*/
//=======================================================================================
/*
getMaze()
Creates and returns an object whose class extends MazeInterface.
This should be an object of a class you have created.
Example: If you made a class called "Maze", you might say, "return new Maze();".
*/
MazeInterface* Factory::getMaze()
{
return new maze();//Modify this line
}
//=======================================================================================
+21
View File
@@ -0,0 +1,21 @@
#include "MazeInterface.h"
#pragma once
/*
WARNING: It is expressly forbidden to modify any part of this document, including its name
*/
//=======================================================================================
/*
getMaze()
Creates and returns an object whose class extends MazeInterface.
This should be an object of a class you have created.
Example: If you made a class called "Maze", you might say, "return new Maze();".
*/
class Factory
{
public:
static MazeInterface * getMaze();
};
//=======================================================================================
+32
View File
@@ -0,0 +1,32 @@
CXXFLAGS= -Wall -g -std=c++0x
OBJECTS=Factory.o maze.o pwnd.o ignoreme.a
EXE=main
all: pwnd.o $(EXE)
$(EXE): $(OBJECTS)
$(CXX) $(CXXFLAGS) $(OBJECTS) -o $@
test: test.cpp maze.o
dump_maze: dump_maze.cpp maze.o
rtest: test
./test
Factory.o: Factory.cpp Factory.h
maze.o: maze.cpp maze.h
pwnd.o: pwnd.c
run: main
./main
clean:
@rm -vf *.o
@rm -vf $(EXE)
@rm -vf *.1
@rm -vf *.0
@rm -vf test
@rm -vf dump_maze
@rm -rvf *.dSYM
drun: main
gdb ./main
valgrind: $(EXE)
valgrind --tool=memcheck --leak-check=yes ./$(EXE)
+49
View File
@@ -0,0 +1,49 @@
#include <string>
#include <iostream>
#include <sstream>
#pragma once
using namespace std;
class MazeInterface{
public:
MazeInterface(){}
virtual ~MazeInterface(){}
/**
* Create and store a random maze with an entry and exit point. (location [0,0,0] and [7,7,7] must have 1's in those spots. The rest of the spots can be randomly 0 or 1.
*/
virtual void createRandomMaze() = 0;
/**
* Read from the given file (see maze_sample.txt for format) and store it as a maze
*
* @param fileName The file name of the file to be imported
*
* @return true if the file was successfully read/imported, false if an error occurred when parsing/reading the file
*/
virtual bool importMaze(string fileName) = 0;
/**
* Traverses the current maze in storage, storing the path taken to solve the maze if the maze was solvable.
*
* @return true if the maze was solvable, false if unsolvable
*/
virtual bool traverseMaze() = 0;
/**
* Returns the path from the most recently traversed maze. The string format should be each position taken
* separated by newlines (see format on website).
*
* @return the path to the most recent maze traversed
* if no maze has been solved yet, return an empty string
*/
virtual string getMazePath() = 0;
/**
* Get the current maze stored in a single string (see website for format)
*
* @return a string representation of your maze
*/
virtual string getMaze() = 0;
};
+72
View File
@@ -0,0 +1,72 @@
1 0 0 0 1 0 0 0
0 1 1 1 1 1 0 0
0 1 0 1 1 0 0 0
0 1 1 1 0 0 1 1
1 1 0 0 0 1 0 0
1 1 1 0 0 1 1 0
1 0 1 0 0 1 0 1
0 0 1 0 1 0 1 0
1 0 0 0 0 1 0 0
1 1 0 0 0 1 0 1
1 0 1 0 1 1 1 1
0 0 0 0 1 0 0 1
0 0 0 0 1 0 1 1
0 0 0 1 0 0 1 0
1 0 1 0 1 0 0 0
0 1 0 1 1 0 0 1
1 1 1 0 0 0 0 1
1 0 0 1 1 1 0 1
1 0 0 1 1 0 1 0
0 1 0 1 0 1 1 1
1 0 1 1 1 1 0 0
0 1 0 1 1 0 0 0
1 1 0 1 0 0 0 1
1 1 1 0 0 0 1 0
1 1 0 0 1 0 1 1
1 1 1 1 1 0 0 1
1 1 0 0 1 0 1 1
0 1 1 1 1 1 0 1
0 1 1 0 0 0 1 0
0 1 0 1 0 0 0 0
1 1 0 1 0 1 1 0
0 0 0 0 1 1 1 0
1 0 0 0 1 1 1 0
0 1 0 1 0 1 0 1
1 0 0 1 0 0 0 0
1 1 1 0 0 1 0 0
0 1 1 0 0 0 1 0
0 1 0 1 0 1 0 0
1 0 0 1 1 1 0 1
1 1 1 1 0 0 0 1
1 0 1 1 1 0 0 0
0 0 0 1 0 0 1 0
0 1 1 0 0 0 0 1
0 0 0 1 0 0 0 1
1 0 1 1 0 1 1 0
1 0 1 0 1 1 0 1
0 0 0 0 0 0 1 1
1 1 0 0 1 0 0 0
0 0 0 0 0 0 1 1
1 0 0 1 1 1 0 1
0 1 0 1 1 1 1 1
0 1 1 0 0 1 1 0
1 1 1 0 1 1 1 1
1 0 1 1 0 1 0 0
0 0 0 1 0 0 1 0
1 1 1 0 1 1 1 0
1 1 1 1 0 0 1 0
0 0 1 0 0 1 0 1
0 1 1 1 0 1 0 0
1 1 1 0 1 0 0 1
0 0 1 0 1 0 0 0
1 1 1 1 0 1 0 1
1 0 1 1 1 1 1 0
1 0 0 0 1 1 1
+72
View File
@@ -0,0 +1,72 @@
1 0 0 0 1 0 0 0
0 1 1 1 1 1 0 0
0 1 0 1 1 0 0 0
0 1 1 1 0 0 1 1
1 1 0 a 0 1 0 0
1 1 1 0 0 1 1 0
1 0 1 0 0 1 0 1
0 0 1 0 1 0 1 0
1 0 0 0 0 1 0 0
1 1 0 0 0 1 0 1
1 0 1 0 1 1 1 1
0 0 0 0 1 0 0 1
0 0 0 0 1 0 1 1
0 0 0 1 0 0 1 0
1 0 1 0 1 0 0 0
0 1 0 1 1 0 0 1
1 1 1 0 0 0 0 1
1 0 0 1 1 1 0 1
1 0 0 1 1 0 1 0
0 1 0 1 0 1 1 1
1 0 1 1 1 1 0 0
0 1 0 1 1 0 0 0
1 1 0 1 0 0 0 1
1 1 1 0 0 0 1 0
1 1 0 0 1 0 1 1
1 1 1 1 1 0 0 1
1 1 0 0 1 0 1 1
0 1 1 1 1 1 0 1
0 1 1 0 0 0 1 0
0 1 0 1 0 0 0 0
1 1 0 1 0 1 1 0
0 0 0 0 1 1 1 0
1 0 0 0 1 1 1 0
0 1 0 1 0 1 0 1
1 0 0 1 0 0 0 0
1 1 1 0 0 1 0 0
0 1 1 0 0 0 1 0
0 1 0 1 0 1 0 0
1 0 0 1 1 1 0 1
1 1 1 1 0 0 0 1
1 0 1 1 1 0 0 0
0 0 0 1 0 0 1 0
0 1 1 0 0 0 0 1
0 0 0 1 0 0 0 1
1 0 1 1 0 1 1 0
1 0 1 0 1 1 0 1
0 0 0 0 0 0 1 1
1 1 0 0 1 0 0 0
0 0 0 0 0 0 1 1
1 0 0 1 1 1 0 1
0 1 0 a 1 1 1 1
0 1 1 0 0 1 1 0
1 1 1 0 1 1 1 1
1 0 1 1 0 1 0 0
0 0 0 1 0 0 1 0
1 1 1 0 1 1 1 0
1 1 1 1 0 0 1 0
0 0 1 0 0 1 0 1
0 1 1 1 0 1 0 0
1 1 1 0 1 0 0 1
0 0 1 0 1 0 0 0
1 1 1 1 0 1 0 1
1 0 1 1 1 1 1 0
1 0 0 0 1 1 1 1
+72
View File
@@ -0,0 +1,72 @@
1 0 0 0 1 0 0 0
0 1 1 1 1 1 0 0
0 1 0 1 1 0 0 0
0 1 1 1 0 0 1 1
1 1 0 0 0 1 0 0
1 1 1 0 0 1 1 0
1 0 1 0 0 1 0 1
0 0 1 0 1 0 1 0
1 0 0 0 0 1 0 0
1 1 0 0 0 1 0 1
1 0 1 0 1 1 1 1
0 0 0 0 1 0 0 1
0 0 0 0 1 0 1 1
0 0 0 1 0 0 1 0
1 0 1 0 1 0 0 0
0 1 0 1 1 0 0 1
1 1 1 0 0 0 0 1
1 0 0 1 1 1 0 1
1 0 0 1 1 0 1 0
0 1 0 1 0 1 1 1
1 0 1 1 1 1 0 0
0 1 0 1 1 0 0 0
1 1 0 1 0 0 0 1
1 1 1 0 0 0 1 0
1 1 0 0 1 0 1 1
1 1 1 1 1 0 0 1
1 1 0 0 1 0 1 1
0 1 1 1 1 1 0 1
0 1 1 0 0 0 1 0
0 1 0 1 0 0 0 0
1 1 0 1 0 1 1 0
0 0 0 0 1 1 1 0
1 0 0 0 1 1 1 0
0 1 0 1 0 1 0 1
1 0 0 1 0 0 0 0
1 1 1 0 0 1 0 0
0 1 1 0 0 0 1 0
0 1 0 1 0 1 0 0
1 0 0 1 1 1 0 1
1 1 1 1 0 0 0 1
1 0 1 1 1 0 0 0
0 0 0 1 0 0 1 0
0 1 1 0 0 0 0 1
0 0 0 1 0 0 0 1
1 0 1 1 0 1 1 0
1 0 1 0 1 1 0 1
0 0 0 0 0 0 1 1
1 1 0 0 1 0 0 0
0 0 0 0 0 0 1 1
1 0 0 1 1 1 0 1
0 1 0 1 1 1 1 1
0 1 1 0 0 1 1 0
1 1 1 0 1 1 1 1
1 0 1 1 0 1 0 0
0 0 0 1 0 0 1 0
1 1 1 0 1 1 1 0
1 1 1 1 0 0 1 0
0 0 1 0 0 1 0 1
0 1 1 1 0 1 0 0
1 1 1 0 1 0 0 1
0 0 1 0 1 0 0 0
1 1 1 1 0 1 0 1
1 0 1 1 1 1 1 0
1 0 0 0 1 1 1 1
+46
View File
@@ -0,0 +1,46 @@
(0, 0, 0)
(0, 0, 1)
(0, 1, 1)
(1, 1, 1)
(1, 1, 0)
(2, 1, 0)
(3, 1, 0)
(4, 1, 0)
(5, 1, 0)
(5, 1, 1)
(5, 2, 1)
(6, 2, 1)
(7, 2, 1)
(7, 3, 1)
(7, 3, 2)
(6, 3, 2)
(5, 3, 2)
(5, 4, 2)
(4, 4, 2)
(3, 4, 2)
(2, 4, 2)
(2, 4, 3)
(1, 4, 3)
(1, 5, 3)
(1, 6, 3)
(0, 6, 3)
(0, 6, 4)
(0, 7, 4)
(1, 7, 4)
(2, 7, 4)
(3, 7, 4)
(3, 6, 4)
(4, 6, 4)
(5, 6, 4)
(5, 5, 4)
(5, 5, 5)
(5, 4, 5)
(6, 4, 5)
(6, 4, 6)
(5, 4, 6)
(5, 5, 6)
(5, 5, 7)
(5, 6, 7)
(6, 6, 7)
(6, 7, 7)
(7, 7, 7)
+72
View File
@@ -0,0 +1,72 @@
1 0 0 0 0 0 0 1
0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 1
0 0 0 1 0 0 0 0
1 0 0 1 0 1 0 0
0 0 0 1 0 0 0 0
1 0 0 1 0 0 0 1
1 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 1 1 0 0 0 0 0
0 0 0 1 0 1 1 1
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0
0 0 0 0 0 0 0 1
0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 1 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
1 1 1 1 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 1 0 0 0 1
0 0 0 0 0 0 1 0
0 0 0 0 0 0 1 0
1 0 0 0 0 1 0 0
0 1 0 0 0 0 0 0
1 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0
0 0 0 0 0 0 1 0
0 0 0 0 0 0 1 0
0 0 0 0 0 0 1 0
1 1 1 1 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 1 0 0 0 0
1 1 1 1 0 0 0 1
1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0
0 0 1 0 0 0 0 0
0 0 1 0 0 0 0 0
0 0 1 0 0 0 0 0
0 0 1 0 0 0 0 1
0 0 1 0 0 0 0 1
0 0 1 0 0 0 0 1
0 0 1 0 0 0 0 1
0 0 1 1 0 0 0 1
0 0 0 1 0 0 0 1
0 0 0 1 0 0 0 1
0 0 0 1 1 1 0 1
+72
View File
@@ -0,0 +1,72 @@
1 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 1 1 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 1 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 1 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 1 1 1 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 1 1 1 1 1 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 1
0 0 1 0 0 0 0 1
0 0 1 0 0 0 0 1
0 0 1 0 0 0 0 0
0 0 1 1 1 1 1 1
+72
View File
@@ -0,0 +1,72 @@
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 0
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 0
1 1 1 1 1 1 0 1
+72
View File
@@ -0,0 +1,72 @@
1 1 1 1 0 0 1 0
0 1 0 0 1 0 0 1
1 1 0 1 0 0 1 1
0 1 1 0 0 1 0 1
1 0 1 1 0 0 0 1
1 0 1 0 1 0 0 1
1 0 0 0 1 1 0 0
1 1 0 1 1 0 1 1
0 0 1 0 1 0 0 0
0 1 0 1 1 0 1 0
0 1 1 1 0 1 1 0
0 1 0 0 1 0 1 1
1 1 1 1 1 0 0 0
0 1 1 1 0 0 0 0
0 1 0 0 1 0 1 1
0 0 0 1 0 1 1 0
0 0 1 1 0 0 1 0
0 1 0 1 0 0 1 0
1 1 1 0 1 0 1 0
0 0 1 0 0 0 1 0
0 1 0 1 0 1 1 0
0 0 0 0 1 0 0 0
1 1 1 1 1 0 0 0
1 0 0 1 1 0 1 1
0 1 0 1 1 0 1 0
1 0 0 0 1 1 1 1
0 1 0 1 1 1 1 1
1 1 0 1 0 0 0 0
1 1 1 1 1 0 1 0
1 1 0 0 0 0 0 1
1 0 1 1 0 0 0 1
0 0 1 0 1 1 1 0
1 1 1 0 1 0 0 1
0 1 0 1 1 1 1 0
0 1 1 1 0 0 0 0
1 0 1 1 0 0 0 0
0 1 0 0 1 1 1 1
0 0 0 1 0 0 1 1
0 1 1 1 1 1 0 1
1 1 0 1 0 0 1 0
0 1 1 1 1 1 0 0
0 1 1 0 1 1 1 1
0 1 1 1 0 1 1 0
1 1 0 0 0 0 1 1
0 0 0 0 0 0 0 1
0 0 0 0 0 1 0 0
1 0 0 1 1 0 0 0
1 0 1 1 0 0 0 1
0 0 1 0 0 0 1 0
1 1 1 1 0 1 1 1
1 1 0 0 0 1 1 0
0 1 0 0 1 1 0 0
1 0 0 1 1 1 1 1
0 0 0 1 1 0 0 0
1 1 1 0 1 1 1 0
0 0 1 0 0 1 0 1
0 0 1 0 1 1 0 0
0 0 0 1 0 1 1 0
1 1 1 0 1 0 1 0
0 1 0 1 1 1 0 0
1 0 1 1 0 0 0 0
0 0 0 0 1 1 1 1
1 0 1 0 1 0 1 0
0 1 1 1 0 1 0 1
+72
View File
@@ -0,0 +1,72 @@
1 1 1 1 0 0 1 0
0 1 0 0 1 0 0 1
1 1 0 1 0 0 1 1
0 1 1 0 0 1 0 1
1 0 1 1 0 0 0 1
1 0 1 0 1 0 0 1
1 0 0 0 1 1 0 0
1 1 0 1 1 0 1 1
0 0 1 0 1 0 0 0
0 1 0 1 1 0 1 0
0 1 1 1 0 1 1 0
0 1 0 0 1 0 1 1
1 1 1 1 1 0 0 0
0 1 1 1 0 0 0 0
0 1 0 0 1 0 1 1
0 0 0 1 0 1 1 0
0 0 1 1 0 0 1 0
0 1 0 1 0 0 1 0
1 1 1 0 1 0 1 0
0 0 1 0 0 0 1 0
0 1 0 1 0 1 1 0
0 0 0 0 1 0 0 0
1 1 1 1 1 0 0 0
1 0 0 1 1 0 1 1
0 1 0 1 1 0 1 0
1 0 0 0 1 1 1 1
0 1 0 1 1 1 1 1
1 1 0 1 0 0 0 0
1 1 1 1 1 0 1 0
1 1 0 0 0 0 0 1
1 0 1 1 0 0 0 1
0 0 1 0 1 1 1 0
1 1 1 0 1 0 0 1
0 1 0 1 1 1 1 0
0 1 1 1 0 0 0 0
1 0 1 1 0 0 0 0
0 1 0 0 1 1 1 1
0 0 0 1 0 0 1 1
0 1 1 1 1 1 0 1
1 1 0 1 0 0 1 0
0 1 1 1 1 1 0 0
0 1 1 0 1 1 1 1
0 1 1 1 0 1 1 0
1 1 0 0 0 0 1 1
0 0 0 0 0 0 0 1
0 0 0 0 0 1 0 0
1 0 0 1 1 0 0 0
1 0 1 1 0 0 0 1
0 0 1 0 0 0 1 0
1 1 1 1 0 1 1 1
1 1 0 0 0 1 1 0
0 1 0 0 1 1 0 0
1 0 0 1 1 1 1 1
0 0 0 1 1 0 0 0
1 1 1 0 1 1 1 0
0 0 1 0 0 1 0 1
0 0 1 0 1 1 0 0
0 0 0 1 0 1 1 0
1 1 1 0 1 0 1 0
0 1 0 1 1 1 0 0
1 0 1 1 0 0 0 0
0 0 0 0 1 1 1 1
1 0 1 0 1 0 1 0
0 1 1 1 0 1 0 1
+72
View File
@@ -0,0 +1,72 @@
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
+72
View File
@@ -0,0 +1,72 @@
1 1 0 0 0 0 0 0
0 1 0 0 0 0 0 0
0 1 1 0 0 0 0 0
0 0 1 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 1 1 1 1 1 1 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 1 1 1 1 1 1 1
0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0
1 1 1 1 1 1 1 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 1 1 1 1 1 1 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 1 1 1 1 1 1 1
0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0
1 1 1 1 1 1 1 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 1 1 1 1 1 1 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 1 1 1 1 1 1 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
+72
View File
@@ -0,0 +1,72 @@
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 1 1 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 1 0 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0
0 0 0 1 0 0 0 0
0 1 0 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 1 1 0 0 0 0
0 0 1 0 0 0 0 0
0 1 1 0 0 0 0 0
0 0 1 0 0 0 0 0
0 0 1 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 1 1 0 0 0
0 0 0 0 1 0 0 0
0 0 0 0 1 0 0 0
0 0 0 0 0 1 1 1
1 1 1 0 0 0 0 0
1 0 1 0 0 0 0 0
1 1 1 1 1 0 0 0
0 0 1 0 1 0 0 0
0 0 1 1 1 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 1 0 0 0
0 0 0 0 1 1 0 1
+72
View File
@@ -0,0 +1,72 @@
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
+72
View File
@@ -0,0 +1,72 @@
1 1 0 0 0 0 0 0
0 1 0 0 0 0 0 0
0 1 1 0 0 0 0 0
0 0 1 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 1 1 1 1 1 1 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 1 1 1 1 1 1 1
0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0
1 1 1 1 1 1 1 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 1 1 1 1 1 1 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 1 1 1 1 1 1 1
0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0
1 1 1 1 1 1 1 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 1 1 1 1 1 1 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 1
1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
+72
View File
@@ -0,0 +1,72 @@
1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 1
1 1 1 1 1 1 1 1
1 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 1
1 1 1 1 1 1 1 1
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
1 1 1 0 1 1 1 0
1 0 1 0 1 0 1 0
1 0 1 0 1 0 1 0
1 0 1 0 1 0 1 0
1 0 1 0 1 0 1 0
1 0 1 0 1 0 1 0
1 0 1 0 1 0 1 0
1 0 1 1 1 0 1 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1
1 1 1 0 0 0 0 0
1 0 1 0 0 0 0 1
1 0 1 1 0 0 0 0
1 0 0 0 1 1 1 0
1 0 0 0 0 0 1 0
1 0 1 1 1 0 1 0
1 0 1 0 1 1 1 0
1 1 1 0 0 0 0 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
0 0 0 1 0 0 0 1
0 0 0 0 1 0 0 1
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 1 1
1 1 1 1 1 1 1 0
1 0 0 0 0 0 1 0
1 0 1 1 0 0 1 0
1 0 1 0 1 0 1 0
1 0 1 0 0 0 1 0
1 0 1 1 1 1 1 0
1 0 0 0 0 0 0 0
1 1 1 1 1 1 1 0
0 0 0 0 0 0 0 0
0 1 1 1 1 1 0 0
0 1 0 0 0 1 0 0
0 1 0 0 1 1 0 0
0 1 0 0 1 0 0 0
0 1 0 0 0 0 0 0
0 1 1 1 1 1 1 1
0 0 0 0 0 0 0 1
+72
View File
@@ -0,0 +1,72 @@
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1
+72
View File
@@ -0,0 +1,72 @@
1 1 0 0 1 1 1 0
0 0 0 0 1 1 0 1
1 1 0 1 0 1 0 0
1 0 1 0 0 0 1 0
1 0 0 1 0 1 0 0
1 0 1 1 1 1 0 0
1 0 0 1 0 1 0 0
1 0 0 0 1 0 1 0
0 0 0 0 1 0 1 0
0 0 1 0 1 0 0 0
0 0 1 1 1 1 0 0
1 1 1 1 1 1 1 0
0 0 1 1 0 0 0 0
0 0 1 1 0 1 1 0
1 0 1 0 1 0 1 1
1 1 1 0 1 1 1 0
1 0 1 0 1 0 1 1
0 1 0 0 0 0 0 1
0 1 0 1 1 1 1 1
1 0 0 0 1 0 1 0
0 0 0 1 0 1 0 0
1 0 1 0 0 0 0 0
0 0 1 1 1 1 0 0
1 0 1 0 1 0 0 0
0 1 1 0 0 1 0 1
1 0 1 0 1 1 1 0
0 0 1 0 1 0 0 0
0 1 1 1 0 1 0 0
0 0 1 0 0 1 1 0
1 1 0 1 1 0 0 0
0 1 0 1 0 0 0 1
1 1 0 0 0 0 1 1
1 1 1 0 1 1 1 1
0 1 1 1 1 1 1 1
0 1 1 0 0 0 1 1
0 0 1 1 1 0 1 0
1 1 0 0 0 1 1 0
0 0 0 1 1 1 0 0
0 1 0 1 0 0 1 0
1 1 1 1 1 0 0 0
1 0 0 0 0 0 0 0
1 1 0 1 1 0 0 1
1 0 1 0 0 0 1 1
1 1 0 0 1 1 0 1
0 0 1 0 1 1 0 1
1 0 0 0 1 1 0 1
1 0 1 0 1 0 0 0
0 0 1 1 0 1 0 1
0 1 1 0 1 1 0 1
1 1 1 0 0 0 0 0
0 1 1 0 0 0 0 0
1 1 1 1 1 1 1 0
0 1 1 0 1 0 0 1
1 1 1 1 0 0 1 0
0 1 0 1 1 1 0 1
1 1 0 0 0 1 1 1
0 1 0 0 1 1 1 1
1 0 1 1 0 1 0 1
1 0 0 1 0 1 0 1
0 1 0 1 1 1 1 1
1 0 1 1 1 1 1 1
1 1 0 1 0 1 0 1
1 0 1 1 1 1 1 1
1 1 0 1 0 1 1 1
+14
View File
@@ -0,0 +1,14 @@
#include <iostream>
#include "maze.h"
using namespace std;
int main(int argc, char * argv[]) {
maze m;
if (argc == 2) {
bool b = m.importMaze(argv[1]);
cout << b << endl;
cout << m << endl;
return 0;
}
return 1;
}
+149
View File
@@ -0,0 +1,149 @@
#include "maze.h"
int WALL = 0;
int EMPTY = 1;
int PATH = 2;
int DEAD = 3;
maze::maze() {
map.resize(8);
for(int i = 0; i < 8; i++) {
map[i].resize(8);
for(int j = 0; j < 8; j++) {
map[i][j].resize(8);
}
}
}
void vector_clear(vector<vector<vector<int>>> & map) {
for(unsigned int k = 0; k < 8; k++) {
for(unsigned int j = 0; j < 8; j++) {
for(unsigned int i = 0; i < 8; i++) {
map[i][j][k] = 0;
}
}
}
}
void maze::createRandomMaze() {
vector_clear(map);
for(int i = 0; i < 8; i++) {
for(int j = 0; j < 8; j++) {
for(int k = 0; k < 8; k++) {
int randnum = rand() % 2;
map[i][j][k] = randnum;
}
}
}
map[0][0][0] = 1;
map[7][7][7] = 1;
}
bool maze::importMaze(string fileName) {
vector_clear(map);
ifstream infile(fileName.c_str());
char c;
for(unsigned int k = 0; k < 8; k++) {
for(unsigned int j = 0; j < 8; j++) {
for(unsigned int i = 0; i < 8; i++) {
c = infile.get();
if (c == '0') {
map[i][j][k] = 0;
}
else if (c == '1') {
map[i][j][k] = 1;
}
else if (c == 'a') {
return false;
}
c = infile.get();
}
c = infile.get();
if(c == '\r') {
c = infile.get();
}
if(c != '\n') {
return false;
}
}
c = infile.get();
if(c == '\r') {
c = infile.get();
}
if(c != '\n') {
return false;
}
}
if(map[0][0][0] == 0 || map[7][7][7] == 0) {
return false;
}
return true;
}
bool maze::solve(int x,int y, int z) {
if(x < 0 || y < 0 || z < 0 || x >= map.size() || y >= map.size() || z >= map.size()) {
return false;
}
else if(map[x][y][z] != EMPTY) {
return false;
}
else if(x == map.size() - 1 && y == map.size() - 1 && z == map.size() - 1) {
path << "(" << x << ", " << y << ", " << z << ")";
ordered_pairs.push_back(path.str());
path.str("");
map[x][y][z] = PATH;
return true;
}
else {
map[x][y][z] = PATH;
if(solve(x - 1, y, z) ||
solve(x + 1, y, z) ||
solve(x, y - 1, z) ||
solve(x, y + 1, z) ||
solve(x, y, z - 1) ||
solve(x, y, z + 1)) {
path << "(" << x << ", " << y << ", " << z << ")\n";
ordered_pairs.push_back(path.str());
path.str("");
return true;
}
else {
map[x][y][z] = DEAD;
return false;
}
}
}
bool maze::traverseMaze() {
path.str("");
ordered_pairs.clear();
bool b = solve(0,0,0);
return b;
}
string maze::getMazePath() {
for(int i = ordered_pairs.size() - 1; i >= 0; i--) {
path << ordered_pairs[i];
}
return path.str();
}
string maze::getMaze() {
stringstream os;
os << *this;
return os.str();
}
ostream & operator<<(ostream & os, maze & m) {
for(int k = 0; k < 8; k++) {
for(int j = 0; j < 8; j++) {
for(int i = 0; i < 8; i++) {
os << m.map[i][j][k];
os << " ";
}
os << "\n";
}
os << "\n";
}
return os;
}
+28
View File
@@ -0,0 +1,28 @@
#ifndef __MAZE_H__
#define __MAZE_H__
#include "MazeInterface.h"
#include <string>
#include <fstream>
#include <streambuf>
#include <iostream>
#include <vector>
using namespace std;
class maze : public MazeInterface {
public:
maze();
stringstream path;
vector<string> ordered_pairs;
vector<vector<vector<int>>> map;
void createRandomMaze();
bool solve(int x,int y,int z);
bool importMaze(string fileName);
bool traverseMaze();
string getMazePath();
string getMaze();
friend ostream & operator<<(ostream & os, maze & m);
};
ostream & operator<<(ostream & os, vector<vector<vector<int>>> & f) ;
#endif
+5
View File
@@ -0,0 +1,5 @@
#include <unistd.h>
int usleep(useconds_t usec) {
return 0;
}
+5
View File
@@ -0,0 +1,5 @@
just to see if it gets it
and spills it out corrects
010110101001010010
+45
View File
@@ -0,0 +1,45 @@
#include <stdio.h>
#include <cassert>
#include <stdlib.h>
#include <time.h>
#include "maze.h"
int main(int argc, char * argv[]) {
srand (time(NULL));
maze m;
m.createRandomMaze();
bool b;
if (argc == 2) {
b = m.importMaze(argv[1]);
}
else {
b = m.importMaze("Mazes/test1.txt");
}
if (b) {
cout << "success" << endl;
}
else {
cout << "failure" << endl;
}
m.importMaze("Mazes/maze_sample.txt");
assert(m.traverseMaze());
cout << m << endl;
m.importMaze("Mazes/solvableMaze.txt");
assert(m.traverseMaze());
cout << m << endl;
cout << m.getMazePath() << endl;
cout << "first" << endl;
m.importMaze("Mazes/solvableMaze2.txt");
assert(m.traverseMaze());
cout << m.getMazePath() << endl;
cout << "second" << endl;
m.importMaze("Mazes/badMaze1.txt");
assert(!m.traverseMaze());
m.importMaze("Mazes/badMaze2.txt");
assert(!m.traverseMaze());
m.importMaze("Mazes/badMaze2.txt");
assert(!m.traverseMaze());
m.importMaze("Mazes/maze_sample.txt");
}