Mercurial > public > maze-solver
annotate README.md @ 16:d85066c2de4a
Add images to readme
author | Dennis C. M. <dennis@denniscm.com> |
---|---|
date | Wed, 20 Nov 2024 08:46:42 +0000 |
parents | 7514f6678025 |
children | 01e56e44fd86 |
rev | line source |
---|---|
1
edee16cfda92
algo working but inefficient
Dennis <denniscmartin@protonmail.com>
parents:
0
diff
changeset
|
1 # maze-solver |
edee16cfda92
algo working but inefficient
Dennis <denniscmartin@protonmail.com>
parents:
0
diff
changeset
|
2 |
16 | 3 I recently saw the [Maze solving youtube video](https://www.youtube.com/watch?v=rop0W4QDOUI) from Computerphile and I find it very interesting. So I decided to build my own maze solver program. |
4 | |
5 It’s a C program that takes a maze PNG and outputs the solution using the [Wall 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
|
6 |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
7 ## Constraints |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
8 |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
9 - Only PNG files |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
10 - Mazes should be square |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
11 - 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
|
12 - Walls and path should be `1px` width |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
13 - 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
|
14 - 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
|
15 |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
16 ## Usage |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
17 |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
18 - Build executable |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
19 - 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
|
20 - 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
|
21 - Run the program `./maze_solver maze1.png` |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
22 |
16 | 23 ### Input |
24 | |
25  | |
26 | |
27 ```bash | |
28 $ ./maze_solver maze.png | |
29 Filename: maze.png | |
30 Width: 101 | |
31 Height: 101 | |
32 Algorithm duration: 0.000121 seconds | |
33 ``` | |
34 | |
35 ### Output | |
36 | |
37  | |
38 | |
15
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
39 ## Note |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
40 |
7514f6678025
Add docs to README
Dennis Concepción Martín <dennis@denniscmartin.com>
parents:
14
diff
changeset
|
41 You can use this [website](https://keesiemeijer.github.io/maze-generator/) to generate mazes |