Mercurial > public > maze-solver
annotate README.md @ 18:e00c468d4699 default tip
Remove .gitignore
author | Dennis C. M. <dennis@denniscm.com> |
---|---|
date | Mon, 02 Jun 2025 19:29:37 +0100 |
parents | 01e56e44fd86 |
children |
rev | line source |
---|---|
17 | 1 # Maze Solver |
1
edee16cfda92
algo working but inefficient
Dennis <denniscmartin@protonmail.com>
parents:
0
diff
changeset
|
2 |
17 | 3 I recently saw the [Maze solving youtube |
4 video](https://www.youtube.com/watch?v=rop0W4QDOUI) from Computerphile and I | |
5 find it very interesting. So I decided to build my own maze solver program. | |
16 | 6 |
17 | 7 It’s a C program that takes a maze PNG and outputs the solution using the [Wall |
8 Follower algorithm](https://en.wikipedia.org/wiki/Maze-solving_algorithm) | |
15
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
9 |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
10 ## Constraints |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
11 |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
12 - Only PNG files |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
13 - Mazes should be square |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
14 - Walls should be black `rgb(0, 0, 0)` and path white `rg(255, 255, 255)` |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
15 - Walls and path should be `1px` width |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
16 - The starting point must be at `(x: 0, y: 1)` |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
17 - The ending point should be at `(x: width, y: height - 1)` |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
18 |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
19 ## Usage |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
20 |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
21 - Build executable |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
22 - Make a folder named `mazes` and place your mazes there |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
23 - Make a folder named `sols`. The script place the solutions here |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
24 - Run the program `./maze_solver maze1.png` |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
25 |
16 | 26 ### Input |
27 | |
17 | 28  |
16 | 29 |
17 | 30 ```bash $ ./maze_solver maze.png Filename: maze.png Width: 101 Height: 101 |
31 Algorithm duration: 0.000121 seconds ``` | |
16 | 32 |
33 ### Output | |
34 | |
17 | 35  |
16 | 36 |
15
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
37 ## Note |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
38 |
17 | 39 You can use this [website](https://keesiemeijer.github.io/maze-generator/) to |
40 generate mazes |