It's a program for creating mazes and finding the shortest path between two points.
-
Open a terminal that supports ANSI and run the following command:
git clone git@github.com:central-university-dev/backend-academy-2024-fall.git
-
Navigate to the project folder:
cd backend_academy_2024_project_2-go-LLIEPJIOK
-
Run the program:
go run cmd/maze/main.go
-
Follow the instructions provided by the program. It's quite simple.
Two algorithms are implemented for maze generation:
- Prim's Algorithm
- Backtracking Algorithm
Two algorithms are implemented for pathfinding:
- Dijkstra's Algorithm
- A* (A-star) with Manhattan distance as the heuristic
The following cell types are used in the maze:
- Wall
- Passage (cost = 3)
- Money (cost = 1)
- Sand (cost = 5)
- River (cost = 10)
- Ambiguous
- Path