4 ms·
As the author mentioned, it cannot solve any boards where all unfilled cells have more than one possible value within the cell's domain. More information about
by MekaiGS 9y ago
As the author mentioned, it cannot solve any boards where all unfilled cells have more than one possible value within the cell's domain. More information about the algorithm here:
https://en.wikipedia.org/wiki/AC-3_algorithm https://en.wikipedia.org/wiki/AC-3_algorithm
You would need to implement something like forward checking or backtracking algorithm to solve all possible boards with higher cost.
- i_s 9y agoHere is one in Swift I did a few years ago that does: https://github.com/isaksky/sudoku-swift/blob/master/Sudoku-Swift/main.swift https://github.com/isaksky/sudoku-swift/blob/master/Sudoku-S... This one solves all 50 from Euler: https://projecteuler.net/problem=96 https://projecteuler.net/problem=96 And here is a classic one in Python from Norvig: http://norvig.com/sudoku.html http://norvig.com/sudoku.html
- emmanuel_1234 9y agoShameless plug, my OCaml implementation: https://github.com/eprochasson/norvig-ocaml https://github.com/eprochasson/norvig-ocaml
- mmanfrin 9y agoSo this can't solve anything more than the most trivial boards? :/