This is the repository for Lab Assignment 5 of the IT251 course.
Based on the blog found here and the code is adapted from
this repository.
- Randomizing solving by picking one of all possible safe colors at each step ensuring a random solution to a problem with multiple solutions.
- Problem generation by solving a sudoku with no filled cells (due to randomized solution, this gives a random solved sudoku out of all possiblities) and then randomly masking a fraction of it (given by the user).
- Support for both 9x9 and 16x16 boards.
- Support for user inputting of problems.
- Problem verifying for user input problems to ensure that the board is valid and solvable.