https://github.com/persianturtle/sudoku
A sudoku solver that implements strategies (and can be extended to support new strategies). It can solve easy, medium, and hard sudokus.
https://github.com/persianturtle/sudoku
Last synced: about 2 months ago
JSON representation
A sudoku solver that implements strategies (and can be extended to support new strategies). It can solve easy, medium, and hard sudokus.
- Host: GitHub
- URL: https://github.com/persianturtle/sudoku
- Owner: persianturtle
- Created: 2024-07-23T03:54:00.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-07-24T13:04:36.000Z (almost 2 years ago)
- Last Synced: 2025-02-03T05:51:42.203Z (over 1 year ago)
- Language: ReScript
- Size: 12.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Sudoku Solver
The goal of this sudoku solver is to define various strategies that I've been learning about [here](https://hodoku.sourceforge.net/en/tech_intro.php).
The strategies that this sudoku solver supports can be found in [Strategies.res](src/Strategies.res).
The input to the program (i.e. the unsolved sudoku) is hard coded in [Solver.res](src/Solver.res). Sudukus are represented by a flat array of numbers, where `0` represents the absence of a number.
To customize the strategies being applied when solving, edit [Solver.res](src/Solver.res).
```
sudoku
->easyStrategies
->mediumStrategies
->hardStrategies
->Utilities.toRows
->Js.log
```
## Installation
```sh
npm install
```
## Build
- Build: `npm run res:build`
- Clean: `npm run res:clean`
- Build & watch: `npm run res:dev`
## Run
```sh
npm run solve
```