Refactor Sudoku solver architecture
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
package strategies
|
||||
|
||||
import "git.kleiax.de/homepage/board"
|
||||
import "git.kleiax.de/homepage/field"
|
||||
|
||||
// ────────────────────────────────────────────────────────────────────────────── //
|
||||
// NAKED_SINGLE STRUCTURE //
|
||||
@@ -11,13 +11,13 @@ type NakedSingle struct {
|
||||
}
|
||||
|
||||
func (ns *NakedSingle) SearchProgressableCells() int {
|
||||
ns.field.ForEachPart(func(part board.Part) {
|
||||
part.ForEachCell(func(cell *board.Cell) {
|
||||
ns.field.ForEachPart(func(part field.Part) {
|
||||
part.ForEachCell(func(cell *field.Cell) {
|
||||
candidates := cell.Notes.Get()
|
||||
if len(candidates) == 1 && cell.GetNumber() == 0 {
|
||||
change := board.ExternalChange{
|
||||
change := field.ExternalChange{
|
||||
Cell: cell,
|
||||
Action: board.ActionSetNumber,
|
||||
Action: field.ActionSetNumber,
|
||||
Value: candidates[0],
|
||||
From: cell.GetNumber(),
|
||||
TriggerdBy: ns.getName(),
|
||||
|
||||
Reference in New Issue
Block a user