multi-puzzle-solver 1.0.6__tar.gz → 1.0.7__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of multi-puzzle-solver might be problematic. Click here for more details.

Files changed (136) hide show
  1. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/PKG-INFO +340 -265
  2. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/README.md +339 -264
  3. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/multi_puzzle_solver.egg-info/PKG-INFO +340 -265
  4. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/multi_puzzle_solver.egg-info/SOURCES.txt +2 -0
  5. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/__init__.py +3 -1
  6. multi_puzzle_solver-1.0.7/src/puzzle_solver/puzzles/abc_view/abc_view.py +75 -0
  7. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/heyawake/heyawake.py +67 -13
  8. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/palisade/palisade.py +5 -20
  9. multi_puzzle_solver-1.0.7/src/puzzle_solver/puzzles/shingoki/shingoki.py +115 -0
  10. multi_puzzle_solver-1.0.7/tests/test_abc_view.py +29 -0
  11. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_shingoki.py +50 -98
  12. multi_puzzle_solver-1.0.6/src/puzzle_solver/puzzles/shingoki/shingoki.py +0 -158
  13. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/pyproject.toml +0 -0
  14. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/setup.cfg +0 -0
  15. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/multi_puzzle_solver.egg-info/dependency_links.txt +0 -0
  16. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/multi_puzzle_solver.egg-info/requires.txt +0 -0
  17. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/multi_puzzle_solver.egg-info/top_level.txt +0 -0
  18. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/core/utils.py +0 -0
  19. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/core/utils_ortools.py +0 -0
  20. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/core/utils_visualizer.py +0 -0
  21. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/aquarium/aquarium.py +0 -0
  22. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/battleships/battleships.py +0 -0
  23. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/binairo/binairo.py +0 -0
  24. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/binairo/binairo_plus.py +0 -0
  25. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/black_box/black_box.py +0 -0
  26. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/bridges/bridges.py +0 -0
  27. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/chess_range/chess_melee.py +0 -0
  28. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/chess_range/chess_range.py +0 -0
  29. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/chess_range/chess_solo.py +0 -0
  30. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/connect_the_dots/connect_the_dots.py +0 -0
  31. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/dominosa/dominosa.py +0 -0
  32. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/filling/filling.py +0 -0
  33. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/flip/flip.py +0 -0
  34. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/flood_it/flood_it.py +0 -0
  35. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/flood_it/parse_map/parse_map.py +0 -0
  36. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/galaxies/galaxies.py +0 -0
  37. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/galaxies/parse_map/parse_map.py +0 -0
  38. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/guess/guess.py +0 -0
  39. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/inertia/inertia.py +0 -0
  40. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/inertia/parse_map/parse_map.py +0 -0
  41. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/inertia/tsp.py +0 -0
  42. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/kakurasu/kakurasu.py +0 -0
  43. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/kakuro/kakuro.py +0 -0
  44. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/keen/keen.py +0 -0
  45. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/light_up/light_up.py +0 -0
  46. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/lits/lits.py +0 -0
  47. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/magnets/magnets.py +0 -0
  48. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/map/map.py +0 -0
  49. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/minesweeper/minesweeper.py +0 -0
  50. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/mosaic/mosaic.py +0 -0
  51. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/nonograms/nonograms.py +0 -0
  52. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/nonograms/nonograms_colored.py +0 -0
  53. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/norinori/norinori.py +0 -0
  54. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/nurikabe/nurikabe.py +0 -0
  55. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/pearl/pearl.py +0 -0
  56. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/pipes/pipes.py +0 -0
  57. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/range/range.py +0 -0
  58. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/rectangles/rectangles.py +0 -0
  59. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/shakashaka/shakashaka.py +0 -0
  60. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/signpost/signpost.py +0 -0
  61. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/singles/singles.py +0 -0
  62. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/slant/parse_map/parse_map.py +0 -0
  63. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/slant/slant.py +0 -0
  64. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/slitherlink/slitherlink.py +0 -0
  65. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/star_battle/star_battle.py +0 -0
  66. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/star_battle/star_battle_shapeless.py +0 -0
  67. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/stitches/parse_map/parse_map.py +0 -0
  68. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/stitches/stitches.py +0 -0
  69. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/sudoku/sudoku.py +0 -0
  70. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/tapa/tapa.py +0 -0
  71. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/tents/tents.py +0 -0
  72. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/thermometers/thermometers.py +0 -0
  73. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/towers/towers.py +0 -0
  74. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/tracks/tracks.py +0 -0
  75. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/twiddle/twiddle.py +0 -0
  76. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/undead/undead.py +0 -0
  77. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/unequal/unequal.py +0 -0
  78. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/unruly/unruly.py +0 -0
  79. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/yin_yang/parse_map/parse_map.py +0 -0
  80. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/puzzles/yin_yang/yin_yang.py +0 -0
  81. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/src/puzzle_solver/utils/visualizer.py +0 -0
  82. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_aquarium.py +0 -0
  83. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_battleships.py +0 -0
  84. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_binairo.py +0 -0
  85. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_binairo_plus.py +0 -0
  86. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_black_box.py +0 -0
  87. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_bridges.py +0 -0
  88. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_chess_melee.py +0 -0
  89. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_chess_range.py +0 -0
  90. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_chess_solo.py +0 -0
  91. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_connect_the_dots.py +0 -0
  92. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_dominosa.py +0 -0
  93. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_filling.py +0 -0
  94. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_flip.py +0 -0
  95. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_flood_it.py +0 -0
  96. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_galaxies.py +0 -0
  97. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_guess.py +0 -0
  98. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_heyawake.py +0 -0
  99. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_inertia.py +0 -0
  100. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_kakurasu.py +0 -0
  101. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_kakuro.py +0 -0
  102. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_keen.py +0 -0
  103. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_light_up.py +0 -0
  104. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_lits.py +0 -0
  105. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_magnets.py +0 -0
  106. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_map.py +0 -0
  107. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_minesweeper.py +0 -0
  108. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_mosaic.py +0 -0
  109. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_nonograms.py +0 -0
  110. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_nonograms_colored.py +0 -0
  111. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_norinori.py +0 -0
  112. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_nurikabe.py +0 -0
  113. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_palisade.py +0 -0
  114. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_pearl.py +0 -0
  115. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_pipes.py +0 -0
  116. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_range.py +0 -0
  117. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_rectangles.py +0 -0
  118. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_shakashaka.py +0 -0
  119. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_signpost.py +0 -0
  120. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_singles.py +0 -0
  121. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_slant.py +0 -0
  122. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_slitherlink.py +0 -0
  123. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_star_battle.py +0 -0
  124. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_stitches.py +0 -0
  125. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_sudoku.py +0 -0
  126. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_tapa.py +0 -0
  127. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_tents.py +0 -0
  128. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_thermometers.py +0 -0
  129. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_towers.py +0 -0
  130. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_tracks.py +0 -0
  131. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_twiddle.py +0 -0
  132. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_undead.py +0 -0
  133. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_unequal.py +0 -0
  134. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_unruly.py +0 -0
  135. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_utils.py +0 -0
  136. {multi_puzzle_solver-1.0.6 → multi_puzzle_solver-1.0.7}/tests/test_yin_yang.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: multi-puzzle-solver
3
- Version: 1.0.6
3
+ Version: 1.0.7
4
4
  Summary: Efficient solvers for countless (50+) types of puzzles (like Sudoku, Minesweeper, etc.) with a simple python API.
5
5
  Author: Ar-Kareem
6
6
  Project-URL: Homepage, https://github.com/Ar-Kareem/puzzle_solver
@@ -102,309 +102,314 @@ These are all the puzzles that are implemented in this repo. <br> Click on any o
102
102
  <tr>
103
103
  <td align="center">
104
104
  <a href="#nonograms-puzzle-type-1"><b>Nonograms</b><br><br>
105
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/nonogram_solved.png" alt="Nonograms" width="140">
105
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/nonogram_solved.png" alt="Nonograms" width="140">
106
106
  </a>
107
107
  </td>
108
108
  <td align="center">
109
109
  <a href="#sudoku-puzzle-type-2"><b>Sudoku</b><br><br>
110
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/sudoku_solved.png" alt="Sudoku" width="140">
110
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/sudoku_solved.png" alt="Sudoku" width="140">
111
111
  </a>
112
112
  </td>
113
113
  <td align="center">
114
114
  <a href="#minesweeper-puzzle-type-3"><b>Minesweeper</b><br><br>
115
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/minesweeper_pre.png" alt="Minesweeper" width="140">
115
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/minesweeper_pre.png" alt="Minesweeper" width="140">
116
116
  </a>
117
117
  </td>
118
118
  <td align="center">
119
119
  <a href="#dominosa-puzzle-type-4"><b>Dominosa</b><br><br>
120
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/dominosa_solved.png" alt="Dominosa" width="140">
120
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/dominosa_solved.png" alt="Dominosa" width="140">
121
121
  </a>
122
122
  </td>
123
123
  <td align="center">
124
124
  <a href="#light-up-puzzle-type-5"><b>Light Up</b><br><br>
125
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/lightup_solved.png" alt="Light Up" width="140">
125
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/lightup_solved.png" alt="Light Up" width="140">
126
126
  </a>
127
127
  </td>
128
128
  </tr>
129
129
  <tr>
130
130
  <td align="center">
131
131
  <a href="#tents-puzzle-type-6"><b>Tents</b><br><br>
132
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/tents_solved.png" alt="Tents" width="140">
132
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/tents_solved.png" alt="Tents" width="140">
133
133
  </a>
134
134
  </td>
135
135
  <td align="center">
136
136
  <a href="#filling-puzzle-type-7"><b>Filling</b><br><br>
137
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/filling_solved.png" alt="Filling" width="140">
137
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/filling_solved.png" alt="Filling" width="140">
138
138
  </a>
139
139
  </td>
140
140
  <td align="center">
141
141
  <a href="#keen-puzzle-type-8"><b>Keen</b><br><br>
142
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/keen_solved.png" alt="Keen" width="140">
142
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/keen_solved.png" alt="Keen" width="140">
143
143
  </a>
144
144
  </td>
145
145
  <td align="center">
146
146
  <a href="#towers-puzzle-type-9"><b>Towers</b><br><br>
147
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/towers_solved.png" alt="Towers" width="140">
147
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/towers_solved.png" alt="Towers" width="140">
148
148
  </a>
149
149
  </td>
150
150
  <td align="center">
151
151
  <a href="#singles-puzzle-type-10"><b>Singles</b><br><br>
152
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/singles_solved.png" alt="Singles" width="140">
152
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/singles_solved.png" alt="Singles" width="140">
153
153
  </a>
154
154
  </td>
155
155
  </tr>
156
156
  <tr>
157
157
  <td align="center">
158
158
  <a href="#magnets-puzzle-type-11"><b>Magnets</b><br><br>
159
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/magnets_solved.png" alt="Magnets" width="140">
159
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/magnets_solved.png" alt="Magnets" width="140">
160
160
  </a>
161
161
  </td>
162
162
  <td align="center">
163
163
  <a href="#signpost-puzzle-type-12"><b>Signpost</b><br><br>
164
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/signpost_solved.png" alt="Signpost" width="140">
164
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/signpost_solved.png" alt="Signpost" width="140">
165
165
  </a>
166
166
  </td>
167
167
  <td align="center">
168
168
  <a href="#range-puzzle-type-13"><b>Range</b><br><br>
169
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/range_solved.png" alt="Range" width="140">
169
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/range_solved.png" alt="Range" width="140">
170
170
  </a>
171
171
  </td>
172
172
  <td align="center">
173
173
  <a href="#undead-puzzle-type-14"><b>Undead</b><br><br>
174
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/undead_solved.png" alt="Undead" width="140">
174
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/undead_solved.png" alt="Undead" width="140">
175
175
  </a>
176
176
  </td>
177
177
  <td align="center">
178
178
  <a href="#unruly-puzzle-type-15"><b>Unruly</b><br><br>
179
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/unruly_solved.png" alt="Unruly" width="140">
179
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/unruly_solved.png" alt="Unruly" width="140">
180
180
  </a>
181
181
  </td>
182
182
  </tr>
183
183
  <tr>
184
184
  <td align="center">
185
185
  <a href="#tracks-puzzle-type-16"><b>Tracks</b><br><br>
186
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/tracks_solved.png" alt="Tracks" width="140">
186
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/tracks_solved.png" alt="Tracks" width="140">
187
187
  </a>
188
188
  </td>
189
189
  <td align="center">
190
190
  <a href="#mosaic-puzzle-type-17"><b>Mosaic</b><br><br>
191
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/mosaic_solved.png" alt="Mosaic" width="140">
191
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/mosaic_solved.png" alt="Mosaic" width="140">
192
192
  </a>
193
193
  </td>
194
194
  <td align="center">
195
195
  <a href="#map-puzzle-type-18"><b>Map</b><br><br>
196
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/map_solved.png" alt="Map" width="140">
196
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/map_solved.png" alt="Map" width="140">
197
197
  </a>
198
198
  </td>
199
199
  <td align="center">
200
200
  <a href="#pearl-puzzle-type-19"><b>Pearl</b><br><br>
201
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/pearl_solved.png" alt="Pearl" width="140">
201
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/pearl_solved.png" alt="Pearl" width="140">
202
202
  </a>
203
203
  </td>
204
204
  <td align="center">
205
205
  <a href="#bridges-puzzle-type-20"><b>Bridges</b><br><br>
206
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/bridges_solved.png" alt="Bridges" width="140">
206
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/bridges_solved.png" alt="Bridges" width="140">
207
207
  </a>
208
208
  </td>
209
209
  </tr>
210
210
  <tr>
211
211
  <td align="center">
212
212
  <a href="#inertia-puzzle-type-21"><b>Inertia</b><br><br>
213
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/inertia_unsolved.png" alt="Inertia" width="140">
213
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/inertia_unsolved.png" alt="Inertia" width="140">
214
214
  </a>
215
215
  </td>
216
216
  <td align="center">
217
217
  <a href="#guess-puzzle-type-22"><b>Guess</b><br><br>
218
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/guess_3.png" alt="Guess" width="140">
218
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/guess_3.png" alt="Guess" width="140">
219
219
  </a>
220
220
  </td>
221
221
  <td align="center">
222
222
  <a href="#chess-range-puzzle-type-23"><b>Chess Range</b><br><br>
223
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/chess_range_unsolved.png" alt="Chess range" width="140">
223
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/chess_range_unsolved.png" alt="Chess range" width="140">
224
224
  </a>
225
225
  </td>
226
226
  <td align="center">
227
227
  <a href="#chess-solo-puzzle-type-24"><b>Chess Solo</b><br><br>
228
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/chess_solo_unsolved.png" alt="Chess solo" width="140">
228
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/chess_solo_unsolved.png" alt="Chess solo" width="140">
229
229
  </a>
230
230
  </td>
231
231
  <td align="center">
232
232
  <a href="#chess-melee-puzzle-type-25"><b>Chess Melee</b><br><br>
233
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/chess_melee_unsolved.png" alt="Chess melee" width="140">
233
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/chess_melee_unsolved.png" alt="Chess melee" width="140">
234
234
  </a>
235
235
  </td>
236
236
  </tr>
237
237
  <tr>
238
238
  <td align="center">
239
239
  <a href="#thermometers-puzzle-type-26"><b>Thermometers</b><br><br>
240
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/thermometers_solved.png" alt="Thermometers" width="140">
240
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/thermometers_solved.png" alt="Thermometers" width="140">
241
241
  </a>
242
242
  </td>
243
243
  <td align="center">
244
244
  <a href="#aquarium-puzzle-type-27"><b>Aquarium</b><br><br>
245
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/aquarium_solved.png" alt="Aquarium" width="140">
245
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/aquarium_solved.png" alt="Aquarium" width="140">
246
246
  </a>
247
247
  </td>
248
248
  <td align="center">
249
249
  <a href="#stitches-puzzle-type-28"><b>Stitches</b><br><br>
250
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/stitches_solved.png" alt="Stitches" width="140">
250
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/stitches_solved.png" alt="Stitches" width="140">
251
251
  </a>
252
252
  </td>
253
253
  <td align="center">
254
254
  <a href="#battleships-puzzle-type-29"><b>Battleships</b><br><br>
255
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/battleships_solved.png" alt="Battleships" width="140">
255
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/battleships_solved.png" alt="Battleships" width="140">
256
256
  </a>
257
257
  </td>
258
258
  <td align="center">
259
259
  <a href="#kakurasu-puzzle-type-30"><b>Kakurasu</b><br><br>
260
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/kakurasu_solved.png" alt="Kakurasu" width="140">
260
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/kakurasu_solved.png" alt="Kakurasu" width="140">
261
261
  </a>
262
262
  </td>
263
263
  </tr>
264
264
  <tr>
265
265
  <td align="center">
266
266
  <a href="#star-battle-puzzle-type-31"><b>Star Battle</b><br><br>
267
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/star_battle_solved.png" alt="Star Battle" width="140">
267
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/star_battle_solved.png" alt="Star Battle" width="140">
268
268
  </a>
269
269
  </td>
270
270
  <td align="center">
271
271
  <a href="#star-battle-shapeless-puzzle-type-32"><b>Star Battle Shapeless</b><br><br>
272
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/star_battle_shapeless_solved.png" alt="Star Battle Shapeless" width="140">
272
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/star_battle_shapeless_solved.png" alt="Star Battle Shapeless" width="140">
273
273
  </a>
274
274
  </td>
275
275
  <td align="center">
276
276
  <a href="#lits-puzzle-type-33"><b>Lits</b><br><br>
277
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/lits_solved.png" alt="Lits" width="140">
277
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/lits_solved.png" alt="Lits" width="140">
278
278
  </a>
279
279
  </td>
280
280
  <td align="center">
281
281
  <a href="#black-box-puzzle-type-34"><b>Black Box</b><br><br>
282
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/black_box_solved.png" alt="Black Box" width="140">
282
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/black_box_solved.png" alt="Black Box" width="140">
283
283
  </a>
284
284
  </td>
285
285
  <td align="center">
286
286
  <a href="#galaxies-puzzle-type-35"><b>Galaxies</b><br><br>
287
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/galaxies_solved.png" alt="Galaxies" width="140">
287
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/galaxies_solved.png" alt="Galaxies" width="140">
288
288
  </a>
289
289
  </td>
290
290
  </tr>
291
291
  <tr>
292
292
  <td align="center">
293
293
  <a href="#slant-puzzle-type-36"><b>Slant</b><br><br>
294
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/slant_solved.png" alt="Slant" width="140">
294
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/slant_solved.png" alt="Slant" width="140">
295
295
  </a>
296
296
  </td>
297
297
  <td align="center">
298
298
  <a href="#unequal-puzzle-type-37"><b>Unequal</b><br><br>
299
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/unequal_solved.png" alt="Unequal" width="140">
299
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/unequal_solved.png" alt="Unequal" width="140">
300
300
  </a>
301
301
  </td>
302
302
  <td align="center">
303
303
  <a href="#norinori-puzzle-type-38"><b>Norinori</b><br><br>
304
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/norinori_solved.png" alt="Norinori" width="140">
304
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/norinori_solved.png" alt="Norinori" width="140">
305
305
  </a>
306
306
  </td>
307
307
  <td align="center">
308
308
  <a href="#slitherlink-puzzle-type-39"><b>Slitherlink</b><br><br>
309
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/slitherlink_solved.png" alt="Slitherlink" width="140">
309
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/slitherlink_solved.png" alt="Slitherlink" width="140">
310
310
  </a>
311
311
  </td>
312
312
  <td align="center">
313
313
  <a href="#yin-yang-puzzle-type-40"><b>Yin-Yang</b><br><br>
314
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/yin_yang_solved.png" alt="Yin-Yang" width="140">
314
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/yin_yang_solved.png" alt="Yin-Yang" width="140">
315
315
  </a>
316
316
  </td>
317
317
  </tr>
318
318
  <tr>
319
319
  <td align="center">
320
320
  <a href="#binairo-puzzle-type-41"><b>Binairo</b><br><br>
321
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/binairo_solved.png" alt="Binairo" width="140">
321
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/binairo_solved.png" alt="Binairo" width="140">
322
322
  </a>
323
323
  </td>
324
324
  <td align="center">
325
325
  <a href="#rectangles-puzzle-type-42"><b>Rectangles</b><br><br>
326
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/rectangles_solved.png" alt="Rectangles" width="140">
326
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/rectangles_solved.png" alt="Rectangles" width="140">
327
327
  </a>
328
328
  </td>
329
329
  <td align="center">
330
330
  <a href="#palisade-puzzle-type-43"><b>Palisade</b><br><br>
331
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/palisade_solved.png" alt="Palisade" width="140">
331
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/palisade_solved.png" alt="Palisade" width="140">
332
332
  </a>
333
333
  </td>
334
334
  <td align="center">
335
335
  <a href="#flip-puzzle-type-44"><b>Flip</b><br><br>
336
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/flip_unsolved.png" alt="Flip" width="140">
336
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/flip_unsolved.png" alt="Flip" width="140">
337
337
  </a>
338
338
  </td>
339
339
  <td align="center">
340
340
  <a href="#nurikabe-puzzle-type-45"><b>Nurikabe</b><br><br>
341
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/nurikabe_solved.png" alt="Nurikabe" width="140">
341
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/nurikabe_solved.png" alt="Nurikabe" width="140">
342
342
  </a>
343
343
  </td>
344
344
  </tr>
345
345
  <tr>
346
346
  <td align="center">
347
347
  <a href="#heyawake-puzzle-type-46"><b>Heyawake</b><br><br>
348
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/heyawake_solved.png" alt="Heyawake" width="140">
348
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/heyawake_solved.png" alt="Heyawake" width="140">
349
349
  </a>
350
350
  </td>
351
351
  <td align="center">
352
352
  <a href="#shingoki-puzzle-type-47"><b>Shingoki</b><br><br>
353
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/shingoki_solved.png" alt="Shingoki" width="140">
353
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/shingoki_solved.png" alt="Shingoki" width="140">
354
354
  </a>
355
355
  </td>
356
356
  <td align="center">
357
357
  <a href="#tapa-puzzle-type-48"><b>Tapa</b><br><br>
358
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/tapa_solved.png" alt="Tapa" width="140">
358
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/tapa_solved.png" alt="Tapa" width="140">
359
359
  </a>
360
360
  </td>
361
361
  <td align="center">
362
362
  <a href="#binairo-plus-puzzle-type-49"><b>Binairo Plus</b><br><br>
363
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/binairo_plus_solved.png" alt="Binairo Plus" width="140">
363
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/binairo_plus_solved.png" alt="Binairo Plus" width="140">
364
364
  </a>
365
365
  </td>
366
366
  <td align="center">
367
367
  <a href="#shakashaka-puzzle-type-50"><b>Shakashaka</b><br><br>
368
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/shakashaka_solved.png" alt="Shakashaka" width="140">
368
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/shakashaka_solved.png" alt="Shakashaka" width="140">
369
369
  </a>
370
370
  </td>
371
371
  </tr>
372
372
  <tr>
373
373
  <td align="center">
374
374
  <a href="#kakuro-puzzle-type-51"><b>Kakuro</b><br><br>
375
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/kakuro_solved.png" alt="Kakuro" width="140">
375
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/kakuro_solved.png" alt="Kakuro" width="140">
376
376
  </a>
377
377
  </td>
378
378
  <td align="center">
379
379
  <a href="#sudoku-jigsaw-puzzle-type-52"><b>Sudoku Jigsaw</b><br><br>
380
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/sudoku_jigsaw_solved.png" alt="Sudoku Jigsaw" width="140">
380
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/sudoku_jigsaw_solved.png" alt="Sudoku Jigsaw" width="140">
381
381
  </a>
382
382
  </td>
383
383
  <td align="center">
384
384
  <a href="#sudoku-killer-puzzle-type-53"><b>Sudoku Killer</b><br><br>
385
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/sudoku_killer_solved.png" alt="Sudoku Killer" width="140">
385
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/sudoku_killer_solved.png" alt="Sudoku Killer" width="140">
386
386
  </a>
387
387
  </td>
388
388
  <td align="center">
389
389
  <a href="#flood-it-puzzle-type-54"><b>Flood It</b><br><br>
390
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/flood_it_unsolved.png" alt="Flood It" width="140">
390
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/flood_it_unsolved.png" alt="Flood It" width="140">
391
391
  </a>
392
392
  </td>
393
393
  <td align="center">
394
394
  <a href="#pipes-puzzle-type-55"><b>Pipes</b><br><br>
395
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/pipes_solved.png" alt="Pipes" width="140">
395
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/pipes_solved.png" alt="Pipes" width="140">
396
396
  </a>
397
397
  </td>
398
398
  </tr>
399
399
  <tr>
400
400
  <td align="center">
401
401
  <a href="#connect-the-dots-puzzle-type-56"><b>Connect the Dots</b><br><br>
402
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/connect_the_dots_solved.png" alt="Connect the Dots" width="140">
402
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/connect_the_dots_solved.png" alt="Connect the Dots" width="140">
403
403
  </a>
404
404
  </td>
405
405
  <td align="center">
406
406
  <a href="#nonograms-colored-puzzle-type-57"><b>Nonograms Colored</b><br><br>
407
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/nonograms_colored_solved.png" alt="Nonograms Colored" width="140">
407
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/nonograms_colored_solved.png" alt="Nonograms Colored" width="140">
408
+ </a>
409
+ </td>
410
+ <td align="center">
411
+ <a href="#abc-view-puzzle-type-58"><b>ABC View</b><br><br>
412
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/abc_view_solved.png" alt="ABC View" width="140">
408
413
  </a>
409
414
  </td>
410
415
  </tr>
@@ -479,6 +484,7 @@ These are all the puzzles that are implemented in this repo. <br> Click on any o
479
484
  - [Pipes (Puzzle Type #55)](#pipes-puzzle-type-55)
480
485
  - [Connect the Dots (Puzzle Type #56)](#connect-the-dots-puzzle-type-56)
481
486
  - [Nonograms Colored (Puzzle Type #57)](#nonograms-colored-puzzle-type-57)
487
+ - [ABC View (Puzzle Type #58)](#abc-view-puzzle-type-58)
482
488
  - [Why SAT / CP-SAT?](#why-sat--cp-sat)
483
489
  - [Testing](#testing)
484
490
  - [Contributing](#contributing)
@@ -492,7 +498,7 @@ The puzzles that have solvers implemented are listed below. Each puzzle has a si
492
498
 
493
499
  ## Nonograms (Puzzle Type #1)
494
500
 
495
- Also known as Hanjie, Paint by Numbers, Griddlers, Pic-a-Pix, Picross, and Pattern.
501
+ Also known as Nonogrids, Numbergrids, or Picross.
496
502
 
497
503
  * [**Play online**](https://www.chiark.greenend.org.uk/~sgtatham/puzzles/js/pattern.html)
498
504
 
@@ -507,7 +513,7 @@ You have a grid of squares, which must all be filled in either black or white. B
507
513
 
508
514
  **Unsolved puzzle**
509
515
 
510
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/nonogram_unsolved.png" alt="Nonogram unsolved" width="500">
516
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/nonogram_unsolved.png" alt="Nonogram unsolved" width="500">
511
517
 
512
518
  Code to utilize this package and solve the puzzle:
513
519
  ```python
@@ -592,7 +598,7 @@ Time taken: 0.04 seconds
592
598
 
593
599
  **Solved puzzle**
594
600
 
595
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/nonogram_solved.png" alt="Nonogram solved" width="500">
601
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/nonogram_solved.png" alt="Nonogram solved" width="500">
596
602
 
597
603
  ---
598
604
 
@@ -619,7 +625,7 @@ You are given some of the numbers as clues; your aim is to place the rest of the
619
625
 
620
626
  **Unsolved puzzle**
621
627
 
622
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/sudoku_unsolved.png" alt="Sudoku unsolved" width="500">
628
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/sudoku_unsolved.png" alt="Sudoku unsolved" width="500">
623
629
 
624
630
  Code to utilize this package and solve the puzzle:
625
631
 
@@ -702,7 +708,7 @@ Time taken: 0.04 seconds
702
708
 
703
709
  **Solved puzzle**
704
710
 
705
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/sudoku_solved.png" alt="Sudoku solved" width="500">
711
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/sudoku_solved.png" alt="Sudoku solved" width="500">
706
712
 
707
713
  ---
708
714
 
@@ -733,7 +739,7 @@ This version of it has an unusual property. By default, it will generate its min
733
739
 
734
740
  **Partially solved puzzle**
735
741
 
736
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/minesweeper_pre.png" alt="Minesweeper partially solved" width="500">
742
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/minesweeper_pre.png" alt="Minesweeper partially solved" width="500">
737
743
 
738
744
  Code to utilize this package and solve the puzzle:
739
745
  ```python
@@ -780,7 +786,7 @@ Time taken: 0.92 seconds
780
786
 
781
787
  **Progressed puzzle**
782
788
 
783
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/minesweeper_post.png" alt="Minesweeper progressed" width="500">
789
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/minesweeper_post.png" alt="Minesweeper progressed" width="500">
784
790
 
785
791
  ---
786
792
 
@@ -801,7 +807,7 @@ Your task is to reconstruct the pattern by arranging the set of dominoes to matc
801
807
 
802
808
  **Unsolved puzzle**
803
809
 
804
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/dominosa_unsolved.png" alt="Dominosa unsolved" width="500">
810
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/dominosa_unsolved.png" alt="Dominosa unsolved" width="500">
805
811
 
806
812
  Code to utilize this package and solve the puzzle:
807
813
  ```python
@@ -843,7 +849,7 @@ Time taken: 0.02 seconds
843
849
 
844
850
  **Solved puzzle**
845
851
 
846
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/dominosa_solved.png" alt="Dominosa solved" width="500">
852
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/dominosa_solved.png" alt="Dominosa solved" width="500">
847
853
 
848
854
  ---
849
855
 
@@ -874,7 +880,7 @@ Non-numbered black squares may have any number of lights adjacent to them.
874
880
 
875
881
  **Unsolved puzzle**
876
882
 
877
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/lightup_unsolved.png" alt="Light Up unsolved" width="500">
883
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/lightup_unsolved.png" alt="Light Up unsolved" width="500">
878
884
 
879
885
  Code to utilize this package and solve the puzzle:
880
886
  ```python
@@ -918,7 +924,7 @@ Time taken: 0.01 seconds
918
924
 
919
925
  Which exactly matches the true solutions (Remember, the goal of the puzzle is to find where to place the lights, marked as 'L' in the solution above):
920
926
 
921
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/lightup_solved.png" alt="Light Up solved" width="500">
927
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/lightup_solved.png" alt="Light Up solved" width="500">
922
928
 
923
929
  ---
924
930
 
@@ -942,7 +948,7 @@ You have a grid of squares, some of which contain trees. Your aim is to place te
942
948
 
943
949
  **Unsolved puzzle**
944
950
 
945
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/tents_unsolved.png" alt="Tents unsolved" width="500">
951
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/tents_unsolved.png" alt="Tents unsolved" width="500">
946
952
 
947
953
  Code to utilize this package and solve the puzzle:
948
954
  ```python
@@ -1017,7 +1023,7 @@ Time taken: 0.01 seconds
1017
1023
 
1018
1024
  **Solved puzzle**
1019
1025
 
1020
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/tents_solved.png" alt="Tents solved" width="500">
1026
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/tents_solved.png" alt="Tents solved" width="500">
1021
1027
 
1022
1028
  ---
1023
1029
 
@@ -1044,7 +1050,7 @@ Note: It may take a few seconds for the model to be built.
1044
1050
 
1045
1051
  **Unsolved puzzle**
1046
1052
 
1047
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/filling_unsolved.png" alt="Filling unsolved" width="500">
1053
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/filling_unsolved.png" alt="Filling unsolved" width="500">
1048
1054
 
1049
1055
  Code to utilize this package and solve the puzzle:
1050
1056
  ```python
@@ -1087,13 +1093,13 @@ Time taken: 0.15 seconds
1087
1093
 
1088
1094
  **Solved puzzle**
1089
1095
 
1090
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/filling_solved.png" alt="Filling solved" width="500">
1096
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/filling_solved.png" alt="Filling solved" width="500">
1091
1097
 
1092
1098
  ---
1093
1099
 
1094
1100
  ## Keen (Puzzle Type #8)
1095
1101
 
1096
- Also known as KenKen
1102
+ Also known as KenKen or CalcuDoku.
1097
1103
 
1098
1104
  * [**Play online**](https://www.chiark.greenend.org.uk/~sgtatham/puzzles/js/keen.html)
1099
1105
 
@@ -1118,7 +1124,7 @@ You have a square grid; each square may contain a digit from 1 to the size of th
1118
1124
 
1119
1125
  **Unsolved puzzle**
1120
1126
 
1121
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/keen_unsolved.png" alt="Keen unsolved" width="500">
1127
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/keen_unsolved.png" alt="Keen unsolved" width="500">
1122
1128
 
1123
1129
  Code to utilize this package and solve the puzzle:
1124
1130
  ```python
@@ -1169,12 +1175,14 @@ Time taken: 0.02 seconds
1169
1175
 
1170
1176
  **Solved puzzle**
1171
1177
 
1172
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/keen_solved.png" alt="Keen solved" width="500">
1178
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/keen_solved.png" alt="Keen solved" width="500">
1173
1179
 
1174
1180
  ---
1175
1181
 
1176
1182
  ## Towers (Puzzle Type #9)
1177
1183
 
1184
+ Also known as Skyscrapers.
1185
+
1178
1186
  * [**Play online**](https://www.chiark.greenend.org.uk/~sgtatham/puzzles/js/towers.html)
1179
1187
 
1180
1188
  * [**Instructions**](https://www.chiark.greenend.org.uk/~sgtatham/puzzles/doc/towers.html#towers)
@@ -1196,7 +1204,7 @@ In harder or larger puzzles, some towers will be specified for you as well as th
1196
1204
 
1197
1205
  **Unsolved puzzle**
1198
1206
 
1199
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/towers_unsolved.png" alt="Towers unsolved" width="500">
1207
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/towers_unsolved.png" alt="Towers unsolved" width="500">
1200
1208
 
1201
1209
  Code to utilize this package and solve the puzzle:
1202
1210
  ```python
@@ -1233,7 +1241,7 @@ Time taken: 0.03 seconds
1233
1241
 
1234
1242
  **Solved puzzle**
1235
1243
 
1236
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/towers_solved.png" alt="Towers solved" width="500">
1244
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/towers_solved.png" alt="Towers solved" width="500">
1237
1245
 
1238
1246
  ---
1239
1247
 
@@ -1260,7 +1268,7 @@ You have a grid of white squares, all of which contain numbers. Your task is to
1260
1268
 
1261
1269
  **Unsolved puzzle**
1262
1270
 
1263
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/singles_unsolved.png" alt="Singles unsolved" width="500">
1271
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/singles_unsolved.png" alt="Singles unsolved" width="500">
1264
1272
 
1265
1273
  Code to utilize this package and solve the puzzle:
1266
1274
  ```python
@@ -1322,7 +1330,7 @@ Time taken: 0.04 seconds
1322
1330
 
1323
1331
  **Solved puzzle**
1324
1332
 
1325
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/singles_solved.png" alt="Singles solved" width="500">
1333
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/singles_solved.png" alt="Singles solved" width="500">
1326
1334
 
1327
1335
  ---
1328
1336
 
@@ -1343,7 +1351,7 @@ Your aim is to correctly place the magnets and blank dominoes such that all the
1343
1351
 
1344
1352
  **Unsolved puzzle**
1345
1353
 
1346
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/magnets_unsolved.png" alt="Magnets unsolved" width="500">
1354
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/magnets_unsolved.png" alt="Magnets unsolved" width="500">
1347
1355
 
1348
1356
  Code to utilize this package and solve the puzzle:
1349
1357
  ```python
@@ -1387,7 +1395,7 @@ Time taken: 0.02 seconds
1387
1395
 
1388
1396
  **Solved puzzle**
1389
1397
 
1390
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/magnets_solved.png" alt="Magnets solved" width="500">
1398
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/magnets_solved.png" alt="Magnets solved" width="500">
1391
1399
 
1392
1400
 
1393
1401
  ---
@@ -1409,7 +1417,7 @@ By convention the first and last numbers are shown; one or more interim numbers
1409
1417
 
1410
1418
  **Unsolved puzzle**
1411
1419
 
1412
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/signpost_unsolved.png" alt="Signpost unsolved" width="500">
1420
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/signpost_unsolved.png" alt="Signpost unsolved" width="500">
1413
1421
 
1414
1422
  Code to utilize this package and solve the puzzle:
1415
1423
  ```python
@@ -1455,7 +1463,7 @@ Time taken: 0.03 seconds
1455
1463
 
1456
1464
  **Solved puzzle**
1457
1465
 
1458
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/signpost_solved.png" alt="Signpost solved" width="500">
1466
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/signpost_solved.png" alt="Signpost solved" width="500">
1459
1467
 
1460
1468
 
1461
1469
  ---
@@ -1486,7 +1494,7 @@ For instance, a square containing the number one must have four black squares as
1486
1494
 
1487
1495
  **Unsolved puzzle**
1488
1496
 
1489
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/range_unsolved.png" alt="Range unsolved" width="500">
1497
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/range_unsolved.png" alt="Range unsolved" width="500">
1490
1498
 
1491
1499
  Code to utilize this package and solve the puzzle:
1492
1500
  ```python
@@ -1543,7 +1551,7 @@ Time taken: 0.07 seconds
1543
1551
 
1544
1552
  **Solved puzzle**
1545
1553
 
1546
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/range_solved.png" alt="Range solved" width="500">
1554
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/range_solved.png" alt="Range solved" width="500">
1547
1555
 
1548
1556
  ---
1549
1557
 
@@ -1566,7 +1574,7 @@ You are also told the total number of each type of monster in the grid. Also aro
1566
1574
 
1567
1575
  **Unsolved puzzle**
1568
1576
 
1569
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/undead_unsolved.png" alt="UnDead unsolved" width="500">
1577
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/undead_unsolved.png" alt="UnDead unsolved" width="500">
1570
1578
 
1571
1579
  Code to utilize this package and solve the puzzle:
1572
1580
  ```python
@@ -1608,12 +1616,14 @@ Time taken: 0.01 seconds
1608
1616
 
1609
1617
  **Solved puzzle**
1610
1618
 
1611
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/undead_solved.png" alt="UnDead solved" width="500">
1619
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/undead_solved.png" alt="UnDead solved" width="500">
1612
1620
 
1613
1621
  ---
1614
1622
 
1615
1623
  ## Unruly (Puzzle Type #15)
1616
1624
 
1625
+ Also known as "3-In-A-Row".
1626
+
1617
1627
  * [**Play online**](https://www.chiark.greenend.org.uk/~sgtatham/puzzles/js/unruly.html)
1618
1628
 
1619
1629
  * [**Instructions**](https://www.chiark.greenend.org.uk/~sgtatham/puzzles/doc/unruly.html#unruly)
@@ -1627,7 +1637,7 @@ You are given a grid of squares, which you must colour either black or white. So
1627
1637
 
1628
1638
  **Unsolved puzzle**
1629
1639
 
1630
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/unruly_unsolved.png" alt="Unruly unsolved" width="500">
1640
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/unruly_unsolved.png" alt="Unruly unsolved" width="500">
1631
1641
 
1632
1642
  Code to utilize this package and solve the puzzle:
1633
1643
  ```python
@@ -1693,7 +1703,7 @@ Time taken: 0.02 seconds
1693
1703
 
1694
1704
  **Solved puzzle**
1695
1705
 
1696
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/unruly_solved.png" alt="Unruly solved" width="500">
1706
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/unruly_solved.png" alt="Unruly solved" width="500">
1697
1707
 
1698
1708
  ---
1699
1709
 
@@ -1713,7 +1723,7 @@ Complete the track from A to B so that the rows and columns contain the same num
1713
1723
 
1714
1724
  **Unsolved puzzle**
1715
1725
 
1716
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/tracks_unsolved.png" alt="Tracks unsolved" width="500">
1726
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/tracks_unsolved.png" alt="Tracks unsolved" width="500">
1717
1727
 
1718
1728
  Code to utilize this package and solve the puzzle:
1719
1729
  ```python
@@ -1784,7 +1794,7 @@ Time taken: 1.01 seconds
1784
1794
 
1785
1795
  **Solved puzzle**
1786
1796
 
1787
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/tracks_solved.png" alt="Tracks solved" width="500">
1797
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/tracks_solved.png" alt="Tracks solved" width="500">
1788
1798
 
1789
1799
  ---
1790
1800
 
@@ -1805,7 +1815,7 @@ Some squares contain clue numbers. Each clue tells you the number of black squar
1805
1815
 
1806
1816
  **Unsolved puzzle**
1807
1817
 
1808
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/mosaic_unsolved.png" alt="Mosaic unsolved" width="500">
1818
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/mosaic_unsolved.png" alt="Mosaic unsolved" width="500">
1809
1819
 
1810
1820
  Code to utilize this package and solve the puzzle:
1811
1821
  ```python
@@ -1874,7 +1884,7 @@ Time taken: 0.02 seconds
1874
1884
 
1875
1885
  **Solved puzzle**
1876
1886
 
1877
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/mosaic_solved.png" alt="Mosaic solved" width="500">
1887
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/mosaic_solved.png" alt="Mosaic solved" width="500">
1878
1888
 
1879
1889
  ---
1880
1890
 
@@ -1895,7 +1905,7 @@ Only regions which share a length of border are required to be different colours
1895
1905
 
1896
1906
  **Unsolved puzzle**
1897
1907
 
1898
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/map_unsolved.png" alt="Map unsolved" width="500">
1908
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/map_unsolved.png" alt="Map unsolved" width="500">
1899
1909
 
1900
1910
  Code to utilize this package and solve the puzzle:
1901
1911
  ```python
@@ -1934,7 +1944,7 @@ Time taken: 0.01 seconds
1934
1944
 
1935
1945
  **Solved puzzle**
1936
1946
 
1937
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/map_solved.png" alt="Map solved" width="500">
1947
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/map_solved.png" alt="Map solved" width="500">
1938
1948
 
1939
1949
  ---
1940
1950
 
@@ -1963,7 +1973,7 @@ A white circle indicates that the square is a straight edge, but at least one of
1963
1973
 
1964
1974
  **Unsolved puzzle**
1965
1975
 
1966
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/pearl_unsolved.png" alt="Pearl unsolved" width="500">
1976
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/pearl_unsolved.png" alt="Pearl unsolved" width="500">
1967
1977
 
1968
1978
  Code to utilize this package and solve the puzzle:
1969
1979
  ```python
@@ -2011,7 +2021,7 @@ Time taken: 0.12 seconds
2011
2021
 
2012
2022
  **Solved puzzle**
2013
2023
 
2014
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/pearl_solved.png" alt="Pearl solved" width="500">
2024
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/pearl_solved.png" alt="Pearl solved" width="500">
2015
2025
 
2016
2026
  ---
2017
2027
 
@@ -2040,7 +2050,7 @@ There are some configurable alternative modes, which involve changing the parall
2040
2050
 
2041
2051
  **Unsolved puzzle**
2042
2052
 
2043
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/bridges_unsolved.png" alt="Bridges unsolved" width="500">
2053
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/bridges_unsolved.png" alt="Bridges unsolved" width="500">
2044
2054
 
2045
2055
  Code to utilize this package and solve the puzzle:
2046
2056
  ```python
@@ -2108,7 +2118,7 @@ Time taken: 0.01 seconds
2108
2118
 
2109
2119
  **Solved puzzle**
2110
2120
 
2111
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/bridges_solved.png" alt="Bridges solved" width="500">
2121
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/bridges_solved.png" alt="Bridges solved" width="500">
2112
2122
 
2113
2123
  ---
2114
2124
 
@@ -2144,7 +2154,7 @@ Running into a mine is fatal. Even if you picked up the last gem in the same mov
2144
2154
 
2145
2155
  **Unsolved puzzle**
2146
2156
 
2147
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/inertia_unsolved.png" alt="Inertia unsolved" width="500">
2157
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/inertia_unsolved.png" alt="Inertia unsolved" width="500">
2148
2158
 
2149
2159
  Code to utilize this package and solve the puzzle:
2150
2160
 
@@ -2197,7 +2207,7 @@ Time taken: 13.92 seconds
2197
2207
 
2198
2208
  This picture won't mean much as the game is about the sequence of moves not the final frame as shown here.
2199
2209
 
2200
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/inertia_solved.png" alt="Inertia solved" width="500">
2210
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/inertia_solved.png" alt="Inertia solved" width="500">
2201
2211
 
2202
2212
  ---
2203
2213
 
@@ -2288,7 +2298,7 @@ Below is an example of how to utilize the solver while in the middle of a puzzle
2288
2298
 
2289
2299
  Let's say we start and made two guesses to end up with the following puzzle:
2290
2300
 
2291
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/guess_1.png" alt="Guess Pre Move" width="500">
2301
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/guess_1.png" alt="Guess Pre Move" width="500">
2292
2302
 
2293
2303
  Code to utilize this package and solve the puzzle:
2294
2304
 
@@ -2315,7 +2325,7 @@ max entropy guess is: ['P', 'Y', 'Y', 'G'] with entropy 3.4511
2315
2325
 
2316
2326
  So we make our next guess as (Purple, Yellow, Yellow, Green) and let's say we get this result: (2 black, 1 white, 1 grey)
2317
2327
 
2318
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/guess_2.png" alt="Guess Post 1 Move" width="500">
2328
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/guess_2.png" alt="Guess Post 1 Move" width="500">
2319
2329
 
2320
2330
  So we input that again to the solver to retreive the next optimal guess:
2321
2331
 
@@ -2339,7 +2349,7 @@ So we make our fourth guess as (Green, Yellow, Yellow, Orange)
2339
2349
 
2340
2350
  When we input the guess, we see that we correctly solve the puzzle!
2341
2351
 
2342
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/guess_3.png" alt="Guess Post 2 Moves" width="500">
2352
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/guess_3.png" alt="Guess Post 2 Moves" width="500">
2343
2353
 
2344
2354
  Note that in this case, the correct guess was among multiple possible guesses
2345
2355
 
@@ -2367,7 +2377,7 @@ You are given a chess board with $N$ pieces distributed on it. Your aim is to ma
2367
2377
 
2368
2378
  **Unsolved puzzle**
2369
2379
 
2370
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/chess_range_unsolved.png" alt="Chess range unsolved" width="500">
2380
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/chess_range_unsolved.png" alt="Chess range unsolved" width="500">
2371
2381
 
2372
2382
  Code to utilize this package and solve the puzzle:
2373
2383
 
@@ -2394,7 +2404,7 @@ Time taken: 1.16 seconds
2394
2404
 
2395
2405
  **Solved puzzle**
2396
2406
 
2397
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/chess_range_solved.png" alt="Chess range solved" width="500">
2407
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/chess_range_solved.png" alt="Chess range solved" width="500">
2398
2408
 
2399
2409
  ---
2400
2410
 
@@ -2419,7 +2429,7 @@ You are given a chess board with $N$ pieces distributed on it. Your aim is to ma
2419
2429
 
2420
2430
  **Unsolved puzzle**
2421
2431
 
2422
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/chess_solo_unsolved.png" alt="Chess solo unsolved" width="500">
2432
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/chess_solo_unsolved.png" alt="Chess solo unsolved" width="500">
2423
2433
 
2424
2434
  Code to utilize this package and solve the puzzle:
2425
2435
 
@@ -2446,7 +2456,7 @@ Time taken: 0.47 seconds
2446
2456
 
2447
2457
  **Solved puzzle**
2448
2458
 
2449
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/chess_solo_solved.png" alt="Chess solo solved" width="500">
2459
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/chess_solo_solved.png" alt="Chess solo solved" width="500">
2450
2460
 
2451
2461
  ---
2452
2462
 
@@ -2470,7 +2480,7 @@ You are given a chess board with $N$ pieces distributed on it (equal white and b
2470
2480
 
2471
2481
  **Unsolved puzzle**
2472
2482
 
2473
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/chess_melee_unsolved.png" alt="Chess melee unsolved" width="500">
2483
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/chess_melee_unsolved.png" alt="Chess melee unsolved" width="500">
2474
2484
 
2475
2485
  Code to utilize this package and solve the puzzle:
2476
2486
 
@@ -2498,7 +2508,7 @@ Time taken: 6.24 seconds
2498
2508
 
2499
2509
  **Solved puzzle**
2500
2510
 
2501
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/chess_melee_solved.png" alt="Chess melee solved" width="500">
2511
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/chess_melee_solved.png" alt="Chess melee solved" width="500">
2502
2512
 
2503
2513
  ---
2504
2514
 
@@ -2519,7 +2529,7 @@ The numbers outside the grid show the number of filled cells horizontally and ve
2519
2529
 
2520
2530
  **Unsolved puzzle**
2521
2531
 
2522
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/thermometers_unsolved.png" alt="Thermometers unsolved" width="500">
2532
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/thermometers_unsolved.png" alt="Thermometers unsolved" width="500">
2523
2533
 
2524
2534
  Code to utilize this package and solve the puzzle:
2525
2535
 
@@ -2574,7 +2584,7 @@ Time taken: 0.01 seconds
2574
2584
 
2575
2585
  **Solved puzzle**
2576
2586
 
2577
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/thermometers_solved.png" alt="Thermometers solved" width="500">
2587
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/thermometers_solved.png" alt="Thermometers solved" width="500">
2578
2588
 
2579
2589
  ---
2580
2590
 
@@ -2599,7 +2609,7 @@ The numbers outside the grid show the number of filled cells horizontally and ve
2599
2609
 
2600
2610
  **Unsolved puzzle**
2601
2611
 
2602
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/aquarium_unsolved.png" alt="Aquarium unsolved" width="500">
2612
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/aquarium_unsolved.png" alt="Aquarium unsolved" width="500">
2603
2613
 
2604
2614
  Code to utilize this package and solve the puzzle:
2605
2615
 
@@ -2672,7 +2682,7 @@ Time taken: 0.02 seconds
2672
2682
 
2673
2683
  **Solved puzzle**
2674
2684
 
2675
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/aquarium_solved.png" alt="Aquarium solved" width="500">
2685
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/aquarium_solved.png" alt="Aquarium solved" width="500">
2676
2686
 
2677
2687
  ---
2678
2688
 
@@ -2695,7 +2705,7 @@ Time taken: 0.02 seconds
2695
2705
 
2696
2706
  **Unsolved puzzle**
2697
2707
 
2698
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/stitches_unsolved.png" alt="Stitches unsolved" width="500">
2708
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/stitches_unsolved.png" alt="Stitches unsolved" width="500">
2699
2709
 
2700
2710
  Code to utilize this package and solve the puzzle:
2701
2711
 
@@ -2771,7 +2781,7 @@ Time taken: 0.01 seconds
2771
2781
 
2772
2782
  **Solved puzzle**
2773
2783
 
2774
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/stitches_solved.png" alt="Stitches solved" width="500">
2784
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/stitches_solved.png" alt="Stitches solved" width="500">
2775
2785
 
2776
2786
  ---
2777
2787
 
@@ -2794,7 +2804,7 @@ Time taken: 0.01 seconds
2794
2804
 
2795
2805
  **Unsolved puzzle**
2796
2806
 
2797
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/battleships_unsolved.png" alt="Battleships unsolved" width="500">
2807
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/battleships_unsolved.png" alt="Battleships unsolved" width="500">
2798
2808
 
2799
2809
  Code to utilize this package and solve the puzzle:
2800
2810
 
@@ -2871,7 +2881,7 @@ Solution found
2871
2881
 
2872
2882
  **Solved puzzle**
2873
2883
 
2874
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/battleships_solved.png" alt="Battleships solved" width="500">
2884
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/battleships_solved.png" alt="Battleships solved" width="500">
2875
2885
 
2876
2886
  ---
2877
2887
 
@@ -2896,7 +2906,7 @@ The goal is to make some of the cells black in such a way that:
2896
2906
 
2897
2907
  **Unsolved puzzle**
2898
2908
 
2899
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/kakurasu_unsolved.png" alt="Kakurasu unsolved" width="500">
2909
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/kakurasu_unsolved.png" alt="Kakurasu unsolved" width="500">
2900
2910
 
2901
2911
  Code to utilize this package and solve the puzzle:
2902
2912
 
@@ -2948,7 +2958,7 @@ Time taken: 0.00 seconds
2948
2958
 
2949
2959
  **Solved puzzle**
2950
2960
 
2951
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/kakurasu_solved.png" alt="Kakurasu solved" width="500">
2961
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/kakurasu_solved.png" alt="Kakurasu solved" width="500">
2952
2962
 
2953
2963
  ---
2954
2964
 
@@ -2970,7 +2980,7 @@ Time taken: 0.00 seconds
2970
2980
 
2971
2981
  **Unsolved puzzle**
2972
2982
 
2973
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/star_battle_unsolved.png" alt="Star Battle unsolved" width="500">
2983
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/star_battle_unsolved.png" alt="Star Battle unsolved" width="500">
2974
2984
 
2975
2985
  Code to utilize this package and solve the puzzle:
2976
2986
 
@@ -3075,7 +3085,7 @@ Time taken: 0.39 seconds
3075
3085
 
3076
3086
  **Solved puzzle**
3077
3087
 
3078
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/star_battle_solved.png" alt="Star Battle solved" width="500">
3088
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/star_battle_solved.png" alt="Star Battle solved" width="500">
3079
3089
 
3080
3090
  ---
3081
3091
 
@@ -3098,7 +3108,7 @@ Time taken: 0.39 seconds
3098
3108
 
3099
3109
  **Unsolved puzzle**
3100
3110
 
3101
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/star_battle_shapeless_unsolved.png" alt="Star Battle Shapeless unsolved" width="500">
3111
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/star_battle_shapeless_unsolved.png" alt="Star Battle Shapeless unsolved" width="500">
3102
3112
 
3103
3113
  Code to utilize this package and solve the puzzle:
3104
3114
 
@@ -3158,7 +3168,7 @@ Time taken: 0.02 seconds
3158
3168
 
3159
3169
  **Solved puzzle**
3160
3170
 
3161
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/star_battle_shapeless_solved.png" alt="Star Battle Shapeless solved" width="500">
3171
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/star_battle_shapeless_solved.png" alt="Star Battle Shapeless solved" width="500">
3162
3172
 
3163
3173
  ---
3164
3174
 
@@ -3184,7 +3194,7 @@ Note: The solver is capable of solving variations where the puzzle pieces the ma
3184
3194
 
3185
3195
  **Unsolved puzzle**
3186
3196
 
3187
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/lits_unsolved.png" alt="Lits unsolved" width="500">
3197
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/lits_unsolved.png" alt="Lits unsolved" width="500">
3188
3198
 
3189
3199
  Code to utilize this package and solve the puzzle:
3190
3200
 
@@ -3271,7 +3281,7 @@ Time taken: 0.09 seconds
3271
3281
 
3272
3282
  **Solved puzzle**
3273
3283
 
3274
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/lits_solved.png" alt="Lits solved" width="500">
3284
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/lits_solved.png" alt="Lits solved" width="500">
3275
3285
 
3276
3286
  ---
3277
3287
 
@@ -3335,7 +3345,7 @@ Note: This puzzle is one of the very rare puzzles where CP-SAT is not a good fit
3335
3345
 
3336
3346
  **Unsolved puzzle**
3337
3347
 
3338
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/black_box_unsolved.png" alt="Black Box unsolved" width="500">
3348
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/black_box_unsolved.png" alt="Black Box unsolved" width="500">
3339
3349
 
3340
3350
  Code to utilize this package and solve the puzzle:
3341
3351
  ```python
@@ -3401,7 +3411,7 @@ Time taken: 24.53 seconds
3401
3411
 
3402
3412
  **Solved puzzle**
3403
3413
 
3404
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/black_box_solved.png" alt="Black Box solved" width="500">
3414
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/black_box_solved.png" alt="Black Box solved" width="500">
3405
3415
 
3406
3416
  ---
3407
3417
 
@@ -3424,7 +3434,7 @@ To enter your solution, you draw lines along the grid edges to mark the boundari
3424
3434
 
3425
3435
  **Unsolved puzzle**
3426
3436
 
3427
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/galaxies_unsolved.png" alt="Galaxies unsolved" width="500">
3437
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/galaxies_unsolved.png" alt="Galaxies unsolved" width="500">
3428
3438
 
3429
3439
  Code to utilize this package and solve the puzzle:
3430
3440
 
@@ -3501,7 +3511,7 @@ Time taken: 0.06 seconds
3501
3511
 
3502
3512
  Applying the solution to the puzzle visually:
3503
3513
 
3504
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/galaxies_solved.png" alt="Galaxies solved" width="500">
3514
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/galaxies_solved.png" alt="Galaxies solved" width="500">
3505
3515
 
3506
3516
  ---
3507
3517
 
@@ -3525,7 +3535,7 @@ You have a grid of squares. Your aim is to draw a diagonal line through each squ
3525
3535
 
3526
3536
  **Unsolved puzzle**
3527
3537
 
3528
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/slant_unsolved.png" alt="Slant unsolved" width="500">
3538
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/slant_unsolved.png" alt="Slant unsolved" width="500">
3529
3539
 
3530
3540
  Code to utilize this package and solve the puzzle:
3531
3541
 
@@ -3586,13 +3596,13 @@ Time taken: 0.06 seconds
3586
3596
 
3587
3597
  Applying the solution to the puzzle visually:
3588
3598
 
3589
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/slant_solved.png" alt="Slant solved" width="500">
3599
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/slant_solved.png" alt="Slant solved" width="500">
3590
3600
 
3591
3601
  ---
3592
3602
 
3593
3603
  ## Unequal (Puzzle Type #37)
3594
3604
 
3595
- Also called "Futoshiki" or Renzoku"
3605
+ Also called "Futoshiki", the "Adjacent" variant is also known as "Renzoku" or "Neighbours".
3596
3606
 
3597
3607
  * [**Play online 1**](https://www.chiark.greenend.org.uk/~sgtatham/puzzles/js/unequal.html)
3598
3608
 
@@ -3625,7 +3635,7 @@ In 'Trivial' difficulty level (available via the 'Custom' game type selector), t
3625
3635
 
3626
3636
  **Unsolved puzzle**
3627
3637
 
3628
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/unequal_unsolved.png" alt="Unequal unsolved" width="500">
3638
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/unequal_unsolved.png" alt="Unequal unsolved" width="500">
3629
3639
 
3630
3640
  Code to utilize this package and solve the puzzle:
3631
3641
 
@@ -3683,7 +3693,7 @@ Time taken: 0.05 seconds
3683
3693
 
3684
3694
  Applying the solution to the puzzle visually:
3685
3695
 
3686
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/unequal_solved.png" alt="Unequal solved" width="500">
3696
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/unequal_solved.png" alt="Unequal solved" width="500">
3687
3697
 
3688
3698
  ---
3689
3699
 
@@ -3707,7 +3717,7 @@ You have to shade some of the cells in such a way that:
3707
3717
 
3708
3718
  **Unsolved puzzle**
3709
3719
 
3710
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/norinori_unsolved.png" alt="Norinori unsolved" width="500">
3720
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/norinori_unsolved.png" alt="Norinori unsolved" width="500">
3711
3721
 
3712
3722
  Code to utilize this package and solve the puzzle:
3713
3723
 
@@ -3795,7 +3805,7 @@ Time taken: 0.03 seconds
3795
3805
 
3796
3806
  Applying the solution to the puzzle visually:
3797
3807
 
3798
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/norinori_solved.png" alt="Norinori solved" width="500">
3808
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/norinori_solved.png" alt="Norinori solved" width="500">
3799
3809
 
3800
3810
  ---
3801
3811
 
@@ -3822,7 +3832,7 @@ A line forming a single loop without crossings or branches means that every corn
3822
3832
 
3823
3833
  **Unsolved puzzle**
3824
3834
 
3825
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/slitherlink_unsolved.png" alt="Slitherlink unsolved" width="500">
3835
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/slitherlink_unsolved.png" alt="Slitherlink unsolved" width="500">
3826
3836
 
3827
3837
  Code to utilize this package and solve the puzzle:
3828
3838
 
@@ -3910,7 +3920,7 @@ Time taken: 2.39 seconds
3910
3920
 
3911
3921
  Applying the solution to the puzzle visually:
3912
3922
 
3913
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/slitherlink_solved.png" alt="Slitherlink solved" width="500">
3923
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/slitherlink_solved.png" alt="Slitherlink solved" width="500">
3914
3924
 
3915
3925
  ---
3916
3926
 
@@ -3932,7 +3942,7 @@ Yin-Yang is played on a rectangular grid with no standard size. Some cells start
3932
3942
 
3933
3943
  **Unsolved puzzle**
3934
3944
 
3935
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/yin_yang_unsolved.png" alt="Yin-Yang unsolved" width="500">
3945
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/yin_yang_unsolved.png" alt="Yin-Yang unsolved" width="500">
3936
3946
 
3937
3947
  Code to utilize this package and solve the puzzle:
3938
3948
 
@@ -4021,7 +4031,7 @@ Time taken: 3.09 seconds
4021
4031
 
4022
4032
  Applying the solution to the puzzle visually:
4023
4033
 
4024
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/yin_yang_solved.png" alt="Yin-Yang solved" width="500">
4034
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/yin_yang_solved.png" alt="Yin-Yang solved" width="500">
4025
4035
 
4026
4036
  ---
4027
4037
 
@@ -4044,7 +4054,7 @@ Binairo is played on a rectangular grid with no standard size. Some cells start
4044
4054
 
4045
4055
  **Unsolved puzzle**
4046
4056
 
4047
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/binairo_unsolved.png" alt="Binairo unsolved" width="500">
4057
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/binairo_unsolved.png" alt="Binairo unsolved" width="500">
4048
4058
 
4049
4059
  Code to utilize this package and solve the puzzle:
4050
4060
 
@@ -4133,7 +4143,7 @@ Time taken: 0.02 seconds
4133
4143
 
4134
4144
  Applying the solution to the puzzle visually:
4135
4145
 
4136
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/binairo_solved.png" alt="Binairo solved" width="500">
4146
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/binairo_solved.png" alt="Binairo solved" width="500">
4137
4147
 
4138
4148
  ---
4139
4149
 
@@ -4160,7 +4170,7 @@ You have a grid of squares, with numbers written in some (but not all) of the sq
4160
4170
 
4161
4171
  **Unsolved puzzle**
4162
4172
 
4163
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/rectangles_unsolved.png" alt="Rectangles unsolved" width="500">
4173
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/rectangles_unsolved.png" alt="Rectangles unsolved" width="500">
4164
4174
 
4165
4175
  Code to utilize this package and solve the puzzle:
4166
4176
 
@@ -4246,7 +4256,7 @@ Time taken: 0.01 seconds
4246
4256
 
4247
4257
  Applying the solution to the puzzle visually:
4248
4258
 
4249
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/rectangles_solved.png" alt="Rectangles solved" width="500">
4259
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/rectangles_solved.png" alt="Rectangles solved" width="500">
4250
4260
 
4251
4261
  ---
4252
4262
 
@@ -4267,7 +4277,7 @@ You're given a grid of N squares and a region size M, some of which contain numb
4267
4277
 
4268
4278
  **Unsolved puzzle**
4269
4279
 
4270
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/palisade_unsolved.png" alt="Palisade unsolved" width="500">
4280
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/palisade_unsolved.png" alt="Palisade unsolved" width="500">
4271
4281
 
4272
4282
  Code to utilize this package and solve the puzzle:
4273
4283
 
@@ -4334,7 +4344,7 @@ Time taken: 11.94 seconds
4334
4344
 
4335
4345
  Applying the solution to the puzzle visually:
4336
4346
 
4337
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/palisade_solved.png" alt="Palisade solved" width="500">
4347
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/palisade_solved.png" alt="Palisade solved" width="500">
4338
4348
 
4339
4349
  ---
4340
4350
 
@@ -4355,7 +4365,7 @@ You have a grid of squares, some light and some dark. Your aim is to light all t
4355
4365
 
4356
4366
  **Unsolved puzzle**
4357
4367
 
4358
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/flip_unsolved.png" alt="Flip unsolved" width="500">
4368
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/flip_unsolved.png" alt="Flip unsolved" width="500">
4359
4369
 
4360
4370
  Code to utilize this package and solve the puzzle:
4361
4371
 
@@ -4398,7 +4408,7 @@ status: OPTIMAL
4398
4408
 
4399
4409
  This picture won't mean much as the game is about the sequence of moves not the final frame as shown here.
4400
4410
 
4401
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/flip_solved.png" alt="Flip solved" width="500">
4411
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/flip_solved.png" alt="Flip solved" width="500">
4402
4412
 
4403
4413
  ---
4404
4414
 
@@ -4427,7 +4437,7 @@ Read more about the history and methods behind nurikabe in the [Wikipedia nurika
4427
4437
 
4428
4438
  **Unsolved puzzle**
4429
4439
 
4430
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/nurikabe_unsolved.png" alt="Nurikabe unsolved" width="500">
4440
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/nurikabe_unsolved.png" alt="Nurikabe unsolved" width="500">
4431
4441
 
4432
4442
  Code to utilize this package and solve the puzzle:
4433
4443
 
@@ -4514,7 +4524,7 @@ Time taken: 1.62 seconds
4514
4524
 
4515
4525
  **Solved puzzle**
4516
4526
 
4517
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/nurikabe_solved.png" alt="Nurikabe solved" width="500">
4527
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/nurikabe_solved.png" alt="Nurikabe solved" width="500">
4518
4528
 
4519
4529
  ---
4520
4530
 
@@ -4537,7 +4547,7 @@ Time taken: 1.62 seconds
4537
4547
 
4538
4548
  **Unsolved puzzle**
4539
4549
 
4540
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/heyawake_unsolved.png" alt="Heyawake unsolved" width="500">
4550
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/heyawake_unsolved.png" alt="Heyawake unsolved" width="500">
4541
4551
 
4542
4552
  Code to utilize this package and solve the puzzle:
4543
4553
 
@@ -4580,57 +4590,57 @@ solutions = binst.solve_and_print()
4580
4590
 
4581
4591
  ```python
4582
4592
  Solution found
4583
- 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
4593
+ 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
4584
4594
  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
4585
- ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
4586
- 0│ │ │▒▒▒│ │ 4 │▒▒▒│ 4 │▒▒▒│ 44 │▒▒▒│ 4 │▒▒▒│ 4 │ │▒▒▒│ │ │
4587
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4588
- 1│▒▒▒│ │ │▒▒▒│ │ │ │ │▒▒▒│ │ │ │ │▒▒▒│ │ │ │▒▒▒│ │
4589
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4590
- 2│ │ │▒▒▒│ │ │ │▒▒▒│ 2 │▒▒▒│ │▒▒▒│ │▒▒▒│ │▒▒▒│
4591
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4592
- 3│ │▒▒▒│ │▒▒▒│ │ │ │▒▒▒│ │▒▒▒│ │▒▒▒│ │▒▒▒│ │ │ │
4593
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4594
- 4│ │ │ │▒▒▒│ ││▒▒▒│ │▒▒▒│ │ │ │ │▒▒▒│ │ │ │▒▒▒│
4595
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4596
- 5│▒▒▒│ │ │ │▒▒▒│ │ │ │▒▒▒│ │ │▒▒▒│ 5 │▒▒▒│ │ │▒▒▒│ │
4597
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4598
- 6│ 3 │ │▒▒▒│ │ │ │▒▒▒│ │ │ │▒▒▒│ │ 5 │▒▒▒│ 5 │ │▒▒▒│ │ │
4599
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4600
- 7│▒▒▒││▒▒▒│ │ │ │ │▒▒▒│ │ │ │▒▒▒│ 5 │▒▒▒│ │ │▒▒▒│ │▒▒▒│
4601
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4602
- 8│ 3 │ │▒▒▒│ 3 │▒▒▒│ 3 │ │▒▒▒│ │▒▒▒│ 3 │▒▒▒│ │ │ │ │▒▒▒│ │ │ 2 │
4603
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4604
- 9│ 3 │▒▒▒│ │ 33 │▒▒▒│ │ │ 3 │▒▒▒│ 44 │▒▒▒│ 4 │▒▒▒│ 4 │ │▒▒▒│
4605
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4606
- 10│▒▒▒│ │ 3 │▒▒▒│ 3 │▒▒▒│ │▒▒▒│ 3 │▒▒▒│ 44 │▒▒▒│ 44 │ │▒▒▒│
4607
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4608
- 11│ │ │ │▒▒▒│ │ │ │ │▒▒▒│ 33 │ │▒▒▒│ │ │▒▒▒│ 2 │▒▒▒│ 2 │ 3 │
4609
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4610
- 12│ │ │▒▒▒│ 22 │▒▒▒│ 5 │▒▒▒│ 5 │ 33 │▒▒▒│ │ │ │ │▒▒▒│ 2 │ 2 │▒▒▒│
4611
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4612
- 13│ │▒▒▒│ │ 222 │▒▒▒│ 55 │▒▒▒│ 3 │ 22 │▒▒▒│ │▒▒▒│ │ 3 │
4613
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4614
- 14│ │ 1 │▒▒▒│ 22 │▒▒▒│ 5 │▒▒▒│ 5 │ 3 │▒▒▒│ 22 │ │▒▒▒│ │ │ │ │▒▒▒│
4615
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4616
- 15│▒▒▒│ 11 │ │▒▒▒│ │ 5 │ 55 │▒▒▒│ 3 │▒▒▒│ 2 │ 11 │▒▒▒│ │ │ 3 │
4617
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4618
- 16│ │ 1 │ 1 │▒▒▒│ │ │▒▒▒│ 5 │▒▒▒│ 33 │ 2 │▒▒▒│ 11 │ │▒▒▒│ │▒▒▒│ 3 │
4619
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4620
- 17│ │ 2 │▒▒▒│ 11 │ 1│▒▒▒│ │ │ │▒▒▒│ │▒▒▒│ 1 ││▒▒▒│ │ 3 │
4621
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4622
- 18│ │▒▒▒│ 2 │ 1 1 │▒▒▒│ │ │ │▒▒▒│ │ │ │ │▒▒▒│ 2 │ │▒▒▒│
4623
- ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
4624
- 19│ │ │ │ │▒▒▒│ │ │▒▒▒│ 2 │▒▒▒│ │ 2 │▒▒▒│ 2 │▒▒▒│ │ 2 │▒▒▒│ │ 3 │
4625
- └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
4595
+ ┌───┬───┬───┬───┬───────────────────────────────────────┬───────┬───────┬───────┐
4596
+ 0│ │ │▒▒▒│ │ 4 ▒▒▒ 4 ▒▒▒ 4 4 ▒▒▒ 4 ▒▒▒ 4 │ ▒▒▒│ 0 0
4597
+ │ ├───┤ │ ├───────┬───────────┬───────┬───────────┤ │ │ │
4598
+ 1│▒▒▒│ │ │▒▒▒│ 0 0 │▒▒▒ │▒▒▒ 0 0 │▒▒▒
4599
+ │ │ │ │ │ ├───────────┤ │ ├───────┴───┬───┴───┬───┤
4600
+ 2│ │ │▒▒▒│ │ 0 0 │▒▒▒ 2 ▒▒▒│ ▒▒▒ ▒▒▒ │▒▒▒ 0
4601
+ ├───┴───┴───┤ │ ├───────┬───┤ ├───────┬───┴───┬───────┤ │ │
4602
+ 3│ ▒▒▒ │▒▒▒│ 0 0 ▒▒▒│ │▒▒▒ │▒▒▒ ▒▒▒│ 0
4603
+ │ ├───┴───────┴───────┤ │ ├───────┤ ├───────┴───────┼───┤
4604
+ 4│ ▒▒▒ │▒▒▒│ ▒▒▒│ 0 0 │▒▒▒ │▒▒▒│
4605
+ ├───┬───────┤ ├───┴───┬───┼───┬───┴───────┤ │ │
4606
+ 5│▒▒▒│ ▒▒▒ ▒▒▒││▒▒▒ 5 ▒▒▒│ ▒▒▒│
4607
+ │ │ ├───┬───────┬───────┴───┬───┤ │ │ │ │ │
4608
+ 6│ 3 │ ▒▒▒│ 0 0 │▒▒▒ │ │▒▒▒│ │ 5 ▒▒▒ 5 │ ▒▒▒ │ │
4609
+ │ │ │ │ │ ├───┴───┤ │ │ ├───┤
4610
+ 7│▒▒▒│ │▒▒▒│ 0 0 ▒▒▒│ 0 0 │▒▒▒ 5 ▒▒▒│ ▒▒▒ │▒▒▒│
4611
+ │ │ ├───┴───────┼───────────┼───────┤ ├───────────┴───────┬───────┤ │
4612
+ 8│ 3 │ ▒▒▒│ 3 ▒▒▒ 3 │ ▒▒▒ │▒▒▒ 3 │▒▒▒│ ▒▒▒│ 0 0 │ 2 │
4613
+ │ │ │ │ │ ├───┴───────────────────┤ │ │
4614
+ 9│ 3 │▒▒▒ │ 3 3 ▒▒▒│ │ 3 ▒▒▒│ 4 4 ▒▒▒ 4 ▒▒▒ 4 │ 0 0 │▒▒▒│
4615
+ │ ├───────┤ ├───────┬───┤ │ ├───────┴───┤
4616
+ 10│▒▒▒│ 0 0 │ 3 ▒▒▒ 3 │▒▒▒ │▒▒▒ 3 │▒▒▒ 4 4 ▒▒▒ 4 4 │ ▒▒▒
4617
+ ├───┤ ├───────────┤ │ │ ├───┬───────────────┬───┴───────┬───┤
4618
+ 11│ │ 0 0 │▒▒▒ │▒▒▒│ 3 3 │ │▒▒▒ ▒▒▒│ 2 ▒▒▒ 2 │ 3 │
4619
+ │ ├───┬───┼───────────┼───────┴───┤ │ │ │ │ │
4620
+ 12│ │ │▒▒▒│ 2 2 ▒▒▒│ 5 ▒▒▒ 5 │ 3 3 │▒▒▒│ │▒▒▒ 2 2 │▒▒▒│
4621
+ │ │ ├───┤ │ ├───────┼───┴───┬───────┬───┴───────────┤ │
4622
+ 13│ │▒▒▒│ │ 2 2 2 │▒▒▒ 5 5 │▒▒▒ 3 │ 2 2 │▒▒▒ ▒▒▒ │ 3 │
4623
+ │ ├───┴───┤ │ │ │ │ │ │ │
4624
+ 14│ │ 1 ▒▒▒│ 2 2 ▒▒▒│ 5 ▒▒▒ 5 │ 3 ▒▒▒│ 2 2 │ ▒▒▒│ │▒▒▒│
4625
+ │ │ ├───────┬───┤ │ │ ├───────┤ │ │
4626
+ 15│▒▒▒│ 1 1 │ ▒▒▒│ 0 │ 5 5 5 │▒▒▒ 3 │▒▒▒ 2 │ 1 1 │▒▒▒ │ 3 │
4627
+ │ │ │ │ │ │ │ │ ├───────┬───┬───┤ │
4628
+ 16│ │ 1 1 │▒▒▒ 0 │▒▒▒ 5 ▒▒▒│ 3 3 │ 2 ▒▒▒│ 1 1 │ ▒▒▒│ │▒▒▒│ 3 │
4629
+ │ ├───────┼───────┴───┼───┬───────┴───┬───┼───────┤ │ │ ├───┤ │
4630
+ 17│ │ 2 ▒▒▒│ 1 1 10 │▒▒▒ │▒▒▒ │▒▒▒ 1 │ │▒▒▒│ │ 3 │
4631
+ │ │ │ │ │ │ ├───────┴───────┼───┬───┴───┤ │ │
4632
+ 18│ │▒▒▒ 2 │ 1 1 ▒▒▒│ 0 │▒▒▒│ │▒▒▒ 2 │ │▒▒▒│
4633
+ ├───┴───────┴───────────┴───┼───────────┤ ├───────────────┤ │ │ │ │
4634
+ 19│ ▒▒▒ │▒▒▒ 2 ▒▒▒│ │ 2 ▒▒▒ 2 ▒▒▒│ │ 2 ▒▒▒│ │ 3 │
4635
+ └───────────────────────────┴───────────┴───┴───────────────┴───┴───────┴───┴───┘
4626
4636
  Solutions found: 1
4627
4637
  status: OPTIMAL
4628
- Time taken: 38.04 seconds
4638
+ Time taken: 6.72 seconds
4629
4639
  ```
4630
4640
 
4631
4641
  **Solved puzzle**
4632
4642
 
4633
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/heyawake_solved.png" alt="Heyawake solved" width="500">
4643
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/heyawake_solved.png" alt="Heyawake solved" width="500">
4634
4644
 
4635
4645
  ---
4636
4646
 
@@ -4654,7 +4664,7 @@ You have to draw lines between the dots to form a single loop without crossings
4654
4664
 
4655
4665
  **Unsolved puzzle**
4656
4666
 
4657
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/shingoki_unsolved.png" alt="Shingoki unsolved" width="500">
4667
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/shingoki_unsolved.png" alt="Shingoki unsolved" width="500">
4658
4668
 
4659
4669
  Code to utilize this package and solve the puzzle:
4660
4670
 
@@ -4694,57 +4704,59 @@ Note that the solver is much slower for large puzzles like this example and take
4694
4704
 
4695
4705
  ```python
4696
4706
  Solution found
4697
- 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
4698
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
4699
- ┌───────────┐ ┌───────────────────────────┐ ┌───┐ ┌───┐
4700
- 0 . . . . . │ . . . │ . │ . . . . . . . │ . │ . │ . │ . │
4701
- ┌───────────────┐ └───┐ ┌───┘┌───────┐ ┌───────────┘ └───┘
4702
- 1│ . . . . . . │ . │ . . . │ . . │ . │ . . . . . . . │
4703
- └───┐ ┌───────┘ ┌───┘ └───┐ └───┐ └───┘ ┌───┐┌───┐
4704
- 2 . │ . │ . . . │ . . . . │ . . │ . . . . │ . │ . │ . │ . │ . │
4705
- ┌───┘ └───┐ └───────┐ │ │ ┌───┘ ┌───┐ ┌───┘ │ │ │ │ │
4706
- 3│ . . . . . . . . . │ . │ . . . │ . │ . . . │ . │ . │ . │
4707
- └───────┐ └───┐ ┌───────┘ │ │ │ ┌───┘ └───┘ ┌───┘ │ │ │ │
4708
- 4 . . │ . . │ . │ . . . . │ . │ . │ . . . . . . . . │ . │
4709
- ┌───────┘ ┌───┘ └───────┐ └───┘ └───┘ ┌───────┐ └───┘ │ │
4710
- 5│ . . . │ . . . . │ . . . . . . . . │ . . . . │ . │
4711
- └───┐ ┌───┘ ┌───┐ └───────────────────┘ └───────────┐ │ │
4712
- 6 . │ . │ . . . │ . │ . . . . . . . . . . . . . │ . │
4713
- ┌───┘ ┌───┘ └───────┐ ┌───────────┐ └───┐ ┌───────┘ │ │
4714
- 7│ . . │ . . │ . . . . │ . . │ . . . . . . │ . . . │ . │
4715
- ┌───┘ ┌───────┐ └───────┘ ┌───┐ ┌───┘ └───┐ │ │
4716
- 8 . │ . . . │ . │ . . │ . . . . . │ . │ . │ . . . . . . │
4717
- │ │ │ │ ┌───┘ ┌───────┐ │ │ │ ┌───┐ │ │ │
4718
- 9│ . . . . . . . . . . . . . . │ . │ . │ . │ . . . │
4719
- └───────────┘ │ │ ┌───┘ │ │ │ │ │ │ │ └───────┘
4720
- 10│ . . . . . . . . . . . │ . │ . │ . │ . │ . │ . . . .
4721
- └───────────┐ ┌───┘ │ │ │ │ │ │ │ │ └───────┐ ┌───┘
4722
- 11 . . . . . . │ . │ . . . . . . . . . . . │ . │ .
4723
- ┌───┐ └───┘ │ │ ┌───┐ │ │ │ └───┘ ┌───┐ │ │
4724
- 12│ . │ . . . . . . . . . . │ . │ . . . . . │ . │ . │ .
4725
- └───────┐ ┌───┘ │ │ │ │ │ └───┐ └───┘ │ │ └───┐
4726
- 13│ . . . │ . . . . . │ . │ . │ . │ . . . . . . . │ . . │
4727
- ┌───┐ └───────┘└───┘┌───┘ ┌───────┐ └───┐
4728
- 14│ . . │ . │ . . . . . . . . . │ . . │ . . . │ . . │ . │
4729
- │ │ │ └───────┐ ┌───┐ └───────────┘ └───┐ │ │ │ ┌───┘
4730
- 15│ . . │ . . . . │ . │ . . . . . . . │ . . │ . │ . │ . .
4731
- │ │ └───────┐ └───┘ ┌───┐ │ │ └───┘┌───┘
4732
- 16│ . . . . . . . │ . . │ . │ . . . . . . . . . │ .
4733
- │ │ ┌───┘ ┌───────┘ ┌───┘ └───────────┘ └───┐ ┌───┐ │ │
4734
- 17│ . │ . . │ . . │ . . . │ . . . . . . . │ . │ . │ . │ . │ .
4735
- └───┐ ┌───┘ ┌───┘ ┌───────────┐ ┌───────┘└───┘ └───┐
4736
- 18 . . │ . │ . │ . . . . . │ . . . │ . │ . . . . . . . │
4737
- └───┐ │ │ └───────────┘ ┌───┘ ┌───────┘ └───────┐ ┌───────┐
4738
- 19 . │ . │ . │ . . . . . . . │ . . . . . . │ . │ . . │ . │
4739
- └───┘ └───────────────────┘ └───────────────────┘ └───┘ └───┘
4707
+ 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 2
4708
+ 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0
4709
+
4710
+ 0 . . . . . 4B───────────┐ ┌───────────────────────────┐ ┌───┐ ┌───┐
4711
+ │ │ │ │ │ │ │
4712
+ 1 ┌──────────────5B └───┐ 2B───┘ 3B───────┐ ┌──3W───────┘└──2B
4713
+ │ │ │ │ │
4714
+ 2 2B──2B ┌──2W───┘ ┌───┘ └───┐ 2B───┐ 2B───┘ . ┌──3B 5W ┌───┐ 11W
4715
+ │ │ │ │ │ │ │ │ │
4716
+ 3 ┌───┘ └───┐ . 3B──────3B ┌───┘ 2B───┐ ┌───┘ 3W │ │
4717
+ │ │ │ │ │ │ │ │ │
4718
+ 4 └──2W───┐ └──2B ┌──2W───┘ 3W 2W 2B──2B └───┘ ┌───┘ │ │ 8W
4719
+ │ │ │ │ │ │
4720
+ 5 ┌───────┘ ┌───┘ └───────┐ └──6B └───┘ ┌──────4B 2W . └───┘ │ │
4721
+ │ │ │ │ │ │
4722
+ 6 └───┐ ┌──2B . ┌───┐ └───────────────────┘ . 2W └──────────4B │ │
4723
+ │ │ │ │ │
4724
+ 7 ┌──2B 2W . ┌───┘ 3B───────┐ . ┌──3W───────┐ └───┐ ┌──────3B │ │
4725
+ │ │ │ │ │ │
4726
+ 8 4W 3B───┘ . 3W ┌───────┐ └──────3B ┌──6B┌───┘ 2B───┐ . │ │
4727
+ │ │ │ │ │ │ │ │ │ │
4728
+ 9 . . │ ┌───┘ ┌──2W──7B │ │ │ ┌───┐ . │ │
4729
+ │ │ │ │ │ │ │ │ │ │ │ │ │
4730
+ 10 └──────3W───┘ 3W 4W 5B───┘ . 5W 4W │ │ └──2W───┘
4731
+ │ │ │ │ │ │ │ │ │ │ │ │
4732
+ 11 7B───────────┐ ┌───┘ │ . . │ └───────┐ 3B───┘
4733
+ │ │ │ │ │ │ │ │ │
4734
+ 12 ┌───┐ . └──2B . 4W ┌───┐ └───┘ ┌──5B .
4735
+ │ │ │ │ │ │ │ │ │ │ │ │ │
4736
+ 13 └──2W───┐ . 2B───┘ 4W 3W │ │ │ └───┐ . 5B──2B 3W └───┐
4737
+ │ │ │ │ │ │
4738
+ 14 ┌───┐ │ . └───────┘ 3B───┘ 7W ┌──2B 5B───────┐└───┐
4739
+ │ │ │ │ │ │ │ │
4740
+ 15 │ │ └──────3B 2B───┐ └──────3W───┘ 2B───┐ . 2W┌───┘
4741
+ │ │ │ │ │ │ │ │
4742
+ 16 └──2W───┐ └───┘ │ . ┌───┐ . . │ │ . └───┘ 3B───┘
4743
+ │ │ │ │ │ │
4744
+ 17 4W . ┌──2B 3B───────┘ ┌──2B 4B───────────┘ └───┐ ┌───┐ 3W .
4745
+ │ │ │ │ │ │
4746
+ 18 7W └──3B┌──2B . ┌───┘ 4B───────────┐ ┌──2W──3B 2B───┘ └───┐
4747
+ │ │ │ │ │ │ │
4748
+ 19 └───┐ 3W └──3W───────┘ 2B───┘ ┌───────┘ └───────┐ 3W ┌──2W───┐
4749
+ │ │ │ │ │ │ │ │ │
4750
+ 20 . 2B───┘ └──────────5W───────┘ . └──5W──────────────6B └───┘ . └───┘
4751
+
4740
4752
  Solutions found: 1
4741
4753
  status: OPTIMAL
4742
- Time taken: 425.97 seconds
4754
+ Time taken: 72.80 seconds
4743
4755
  ```
4744
4756
 
4745
4757
  **Solved puzzle**
4746
4758
 
4747
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/shingoki_solved.png" alt="Shingoki solved" width="500">
4759
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/shingoki_solved.png" alt="Shingoki solved" width="500">
4748
4760
 
4749
4761
  ---
4750
4762
 
@@ -4773,7 +4785,7 @@ You are given a grid where some cells have numbers. Your goal is to shade some c
4773
4785
 
4774
4786
  **Unsolved puzzle**
4775
4787
 
4776
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/tapa_unsolved.png" alt="Tapa unsolved" width="500">
4788
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/tapa_unsolved.png" alt="Tapa unsolved" width="500">
4777
4789
 
4778
4790
  Code to utilize this package and solve the puzzle:
4779
4791
 
@@ -4864,7 +4876,7 @@ Time taken: 14.20 seconds
4864
4876
 
4865
4877
  **Solved puzzle**
4866
4878
 
4867
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/tapa_solved.png" alt="Tapa solved" width="500">
4879
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/tapa_solved.png" alt="Tapa solved" width="500">
4868
4880
 
4869
4881
  ---
4870
4882
 
@@ -4887,7 +4899,7 @@ Binairo+ is played on a rectangular grid with no standard size. Some cells start
4887
4899
 
4888
4900
  **Unsolved puzzle**
4889
4901
 
4890
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/binairo_plus_unsolved.png" alt="Binairo Plus unsolved" width="500">
4902
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/binairo_plus_unsolved.png" alt="Binairo Plus unsolved" width="500">
4891
4903
 
4892
4904
  Code to utilize this package and solve the puzzle:
4893
4905
 
@@ -4989,7 +5001,7 @@ Time taken: 0.00 seconds
4989
5001
 
4990
5002
  **Solved puzzle**
4991
5003
 
4992
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/binairo_plus_solved.png" alt="Binairo Plus solved" width="500">
5004
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/binairo_plus_solved.png" alt="Binairo Plus solved" width="500">
4993
5005
 
4994
5006
  ---
4995
5007
 
@@ -5015,7 +5027,7 @@ The objective is to place black triangles in the white cell in such a way so tha
5015
5027
 
5016
5028
  **Unsolved puzzle**
5017
5029
 
5018
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/shakashaka_unsolved.png" alt="Shakashaka unsolved" width="500">
5030
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/shakashaka_unsolved.png" alt="Shakashaka unsolved" width="500">
5019
5031
 
5020
5032
  Code to utilize this package and solve the puzzle:
5021
5033
 
@@ -5167,7 +5179,7 @@ Time taken: 0.36 seconds
5167
5179
 
5168
5180
  **Solved puzzle**
5169
5181
 
5170
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/shakashaka_solved.png" alt="Shakashaka solved" width="500">
5182
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/shakashaka_solved.png" alt="Shakashaka solved" width="500">
5171
5183
 
5172
5184
  ---
5173
5185
 
@@ -5189,7 +5201,7 @@ Kakuro is played on a rectangular grid by placing numbers in the white cells suc
5189
5201
 
5190
5202
  **Unsolved puzzle**
5191
5203
 
5192
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/kakuro_unsolved.png" alt="Kakuro unsolved" width="500">
5204
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/kakuro_unsolved.png" alt="Kakuro unsolved" width="500">
5193
5205
 
5194
5206
  Code to utilize this package and solve the puzzle:
5195
5207
 
@@ -5248,7 +5260,7 @@ Time taken: 0.00 seconds
5248
5260
 
5249
5261
  **Solved puzzle**
5250
5262
 
5251
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/kakuro_solved.png" alt="Kakuro solved" width="500">
5263
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/kakuro_solved.png" alt="Kakuro solved" width="500">
5252
5264
 
5253
5265
  ---
5254
5266
 
@@ -5268,7 +5280,7 @@ Time taken: 0.00 seconds
5268
5280
 
5269
5281
  **Unsolved puzzle**
5270
5282
 
5271
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/sudoku_jigsaw_unsolved.png" alt="Sudoku Jigsaw unsolved" width="500">
5283
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/sudoku_jigsaw_unsolved.png" alt="Sudoku Jigsaw unsolved" width="500">
5272
5284
 
5273
5285
  Code to utilize this package and solve the puzzle:
5274
5286
 
@@ -5335,7 +5347,7 @@ Time taken: 0.01 seconds
5335
5347
 
5336
5348
  **Solved puzzle**
5337
5349
 
5338
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/sudoku_jigsaw_solved.png" alt="Sudoku Jigsaw solved" width="500">
5350
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/sudoku_jigsaw_solved.png" alt="Sudoku Jigsaw solved" width="500">
5339
5351
 
5340
5352
  ---
5341
5353
 
@@ -5356,7 +5368,7 @@ Time taken: 0.01 seconds
5356
5368
 
5357
5369
  **Unsolved puzzle**
5358
5370
 
5359
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/sudoku_killer_unsolved.png" alt="Sudoku Killer unsolved" width="500">
5371
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/sudoku_killer_unsolved.png" alt="Sudoku Killer unsolved" width="500">
5360
5372
 
5361
5373
  Code to utilize this package and solve the puzzle:
5362
5374
 
@@ -5419,7 +5431,7 @@ Time taken: 0.02 seconds
5419
5431
 
5420
5432
  **Solved puzzle**
5421
5433
 
5422
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/sudoku_killer_solved.png" alt="Sudoku Killer solved" width="500">
5434
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/sudoku_killer_solved.png" alt="Sudoku Killer solved" width="500">
5423
5435
 
5424
5436
  ---
5425
5437
 
@@ -5448,7 +5460,7 @@ Finding an optimal solution for any graph is NP-hard.
5448
5460
 
5449
5461
  **Unsolved puzzle**
5450
5462
 
5451
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/flood_it_unsolved.png" alt="Flood It unsolved" width="500">
5463
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/flood_it_unsolved.png" alt="Flood It unsolved" width="500">
5452
5464
 
5453
5465
  Code to utilize this package and solve the puzzle:
5454
5466
 
@@ -5498,13 +5510,13 @@ This picture won't mean much as the game is about the sequence and number of mov
5498
5510
 
5499
5511
  Note that the solved solution on the bottom left says that only 18 moves were used (based on the above output) despite the website saying 20 total moves are permitted (and the puzzle settings specified 0 extra moves permitted). Thus the solver managed to find a more optimal solution than the website.
5500
5512
 
5501
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/flood_it_solved.png" alt="Flood It solved" width="500">
5513
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/flood_it_solved.png" alt="Flood It solved" width="500">
5502
5514
 
5503
5515
  ---
5504
5516
 
5505
5517
  ## Pipes (Puzzle Type #55)
5506
5518
 
5507
- Also known as Net.
5519
+ Also known as Net or Network.
5508
5520
 
5509
5521
  * [**Play online 1**](https://www.chiark.greenend.org.uk/~sgtatham/puzzles/js/net.html)
5510
5522
 
@@ -5525,7 +5537,7 @@ The goal is to create a single fully connected graph where each cell's connectio
5525
5537
 
5526
5538
  **Unsolved puzzle**
5527
5539
 
5528
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/pipes_unsolved.png" alt="Pipes unsolved" width="500">
5540
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/pipes_unsolved.png" alt="Pipes unsolved" width="500">
5529
5541
 
5530
5542
  Code to utilize this package and solve the puzzle:
5531
5543
 
@@ -5584,7 +5596,7 @@ Time taken: 5.65 seconds
5584
5596
 
5585
5597
  **Solved puzzle**
5586
5598
 
5587
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/pipes_solved.png" alt="Pipes solved" width="500">
5599
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/pipes_solved.png" alt="Pipes solved" width="500">
5588
5600
 
5589
5601
  ---
5590
5602
 
@@ -5604,7 +5616,7 @@ You are given a grid of empty cells and 2 filled cell per color. The goal is to
5604
5616
 
5605
5617
  **Unsolved puzzle**
5606
5618
 
5607
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/connect_the_dots_unsolved.png" alt="Connect the Dots unsolved" width="500">
5619
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/connect_the_dots_unsolved.png" alt="Connect the Dots unsolved" width="500">
5608
5620
 
5609
5621
  Code to utilize this package and solve the puzzle:
5610
5622
 
@@ -5654,12 +5666,14 @@ Time taken: 2.91 seconds
5654
5666
 
5655
5667
  **Solved puzzle**
5656
5668
 
5657
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/connect_the_dots_solved.png" alt="Connect the Dots solved" width="500">
5669
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/connect_the_dots_solved.png" alt="Connect the Dots solved" width="500">
5658
5670
 
5659
5671
  ---
5660
5672
 
5661
5673
  ## Nonograms Colored (Puzzle Type #57)
5662
5674
 
5675
+ Also known as Nonogrids, Numbergrids, or Picross.
5676
+
5663
5677
  * [**Play online**](https://www.nonograms.org/nonograms2)
5664
5678
 
5665
5679
  * [**Solver Code**][57]
@@ -5673,7 +5687,7 @@ You have a grid of squares, which must all be filled in either white or one of t
5673
5687
 
5674
5688
  **Unsolved puzzle**
5675
5689
 
5676
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/nonograms_colored_unsolved.png" alt="Nonograms Colored unsolved" width="500">
5690
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/nonograms_colored_unsolved.png" alt="Nonograms Colored unsolved" width="500">
5677
5691
 
5678
5692
  Code to utilize this package and solve the puzzle:
5679
5693
 
@@ -5780,11 +5794,71 @@ Time taken: 0.40 seconds
5780
5794
 
5781
5795
  The script also visualizes the solution:
5782
5796
 
5783
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/nonograms_colored_script_output.png" alt="Nonograms Colored solved" width="500">
5797
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/nonograms_colored_script_output.png" alt="Nonograms Colored solved" width="500">
5798
+
5799
+ **Solved puzzle**
5800
+
5801
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/nonograms_colored_solved.png" alt="Nonograms Colored solved" width="500">
5802
+
5803
+ ---
5804
+
5805
+ ## ABC View (Puzzle Type #58)
5806
+
5807
+ * [**Play online**](https://www.brainbashers.com/showabcview.asp)
5808
+
5809
+ * [**Solver Code**][58]
5810
+
5811
+ <details>
5812
+ <summary><strong>Rules</strong></summary>
5813
+
5814
+ Fill every row and column with exactly one A, B, and C (and two blank squares).
5815
+ The clues tell you which letter appears first in that direction in each row or column.
5816
+
5817
+ </details>
5818
+
5819
+ **Unsolved puzzle**
5820
+
5821
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/abc_view_unsolved.png" alt="ABC View unsolved" width="500">
5822
+
5823
+ Code to utilize this package and solve the puzzle:
5824
+
5825
+ ```python
5826
+ import numpy as np
5827
+ from puzzle_solver import abc_view_solver as solver
5828
+ board = np.full((5, 5), ' ')
5829
+ top = np.array(['C', 'C', 'C', 'B', ''])
5830
+ left = np.array(['C', 'C', '', 'A', ''])
5831
+ bottom = np.array(['', 'A', 'A', 'C', 'B'])
5832
+ right = np.array(['', '', 'C', '', ''])
5833
+ binst = solver.Board(board=board, top=top, left=left, bottom=bottom, right=right, characters=['A', 'B', 'C'])
5834
+ solutions = binst.solve_and_print()
5835
+ ```
5836
+
5837
+ **Script Output**
5838
+
5839
+ ```python
5840
+ Solution found
5841
+
5842
+ 0 1 2 3 4
5843
+ ┌───┬───┬───┬───┬───┐
5844
+ 0│ │ C │ │ B │ A │
5845
+ ├───┼───┼───┼───┼───┤
5846
+ 1│ C │ B │ │ A │ │
5847
+ ├───┼───┼───┼───┼───┤
5848
+ 2│ B │ A │ C │ │ │
5849
+ ├───┼───┼───┼───┼───┤
5850
+ 3│ A │ │ B │ │ C │
5851
+ ├───┼───┼───┼───┼───┤
5852
+ 4│ │ │ A │ C │ B │
5853
+ └───┴───┴───┴───┴───┘
5854
+ Solutions found: 1
5855
+ status: OPTIMAL
5856
+ Time taken: 0.01 seconds
5857
+ ```
5784
5858
 
5785
5859
  **Solved puzzle**
5786
5860
 
5787
- <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/nonograms_colored_solved.png" alt="Nonograms Colored solved" width="500">
5861
+ <img src="https://raw.githubusercontent.com/Ar-Kareem/puzzle_solver/master/images/puzzles/abc_view_solved.png" alt="ABC View solved" width="500">
5788
5862
 
5789
5863
  ---
5790
5864
 
@@ -5896,3 +5970,4 @@ Issues and PRs welcome!
5896
5970
  [55]: https://github.com/Ar-Kareem/puzzle_solver/tree/master/src/puzzle_solver/puzzles/pipes "puzzle_solver/src/puzzle_solver/puzzles/pipes at master · Ar-Kareem/puzzle_solver · GitHub"
5897
5971
  [56]: https://github.com/Ar-Kareem/puzzle_solver/tree/master/src/puzzle_solver/puzzles/connect_the_dots "puzzle_solver/src/puzzle_solver/puzzles/connect_the_dots at master · Ar-Kareem/puzzle_solver · GitHub"
5898
5972
  [57]: https://github.com/Ar-Kareem/puzzle_solver/tree/master/src/puzzle_solver/puzzles/nonograms "puzzle_solver/src/puzzle_solver/puzzles/nonograms at master · Ar-Kareem/puzzle_solver · GitHub"
5973
+ [58]: https://github.com/Ar-Kareem/puzzle_solver/tree/master/src/puzzle_solver/puzzles/abc_view "puzzle_solver/src/puzzle_solver/puzzles/abc_view at master · Ar-Kareem/puzzle_solver · GitHub"