@wsabol/sudoku-solver 0.1.12 → 0.1.13
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.
- package/dist/boardGeo.d.ts +0 -0
- package/dist/boardGeo.d.ts.map +0 -0
- package/dist/boardGeo.js +0 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +56 -3
- package/dist/move.d.ts +0 -0
- package/dist/move.d.ts.map +0 -0
- package/dist/move.js +0 -0
- package/dist/sudoku.d.ts +0 -0
- package/dist/sudoku.d.ts.map +0 -0
- package/dist/sudoku.js +0 -0
- package/dist/sudokuSolver.d.ts +3 -0
- package/dist/sudokuSolver.d.ts.map +1 -1
- package/dist/sudokuSolver.js +24 -0
- package/dist/utils.d.ts +0 -0
- package/dist/utils.d.ts.map +0 -0
- package/dist/utils.js +0 -0
- package/dist/validate.d.ts +0 -0
- package/dist/validate.d.ts.map +0 -0
- package/dist/validate.js +0 -0
- package/package.json +1 -1
package/dist/boardGeo.d.ts
CHANGED
|
File without changes
|
package/dist/boardGeo.d.ts.map
CHANGED
|
File without changes
|
package/dist/boardGeo.js
CHANGED
|
File without changes
|
package/dist/index.d.ts
CHANGED
|
@@ -7,6 +7,8 @@ interface SolveResult {
|
|
|
7
7
|
board: Board;
|
|
8
8
|
}
|
|
9
9
|
interface DescribeResult {
|
|
10
|
+
countGivens: number;
|
|
11
|
+
countEmptyCells: number;
|
|
10
12
|
isValid: boolean;
|
|
11
13
|
isComplete: boolean;
|
|
12
14
|
message: string;
|
|
@@ -19,6 +21,7 @@ interface MoveResult {
|
|
|
19
21
|
message: string;
|
|
20
22
|
}
|
|
21
23
|
declare function solve(boardInput: string | Board): SolveResult;
|
|
24
|
+
export declare function bruteForceSolve(board: Board): Board | null;
|
|
22
25
|
declare function nextMove(boardInput: string | Board): MoveResult;
|
|
23
26
|
declare function validate(boardInput: string | Board): ValidationResult;
|
|
24
27
|
declare function describeBoard(boardInput: string | Board): DescribeResult;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,EAAE,EAAE,KAAK,SAAS,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EAA8C,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC/G,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAElF,UAAU,WAAW;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,CAAC;CAChB;AAED,UAAU,cAAc;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,eAAe,GAAG,IAAI,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,UAAU;IAChB,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,iBAAS,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,WAAW,CAOtD;AAED,iBAAS,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,UAAU,CA0BxD;AAED,iBAAS,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,gBAAgB,CAY9D;AAED,iBAAS,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,EAAE,EAAE,KAAK,SAAS,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EAA8C,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC/G,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAElF,UAAU,WAAW;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,CAAC;CAChB;AAED,UAAU,cAAc;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,eAAe,GAAG,IAAI,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,UAAU;IAChB,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,iBAAS,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,WAAW,CAOtD;AAuCD,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,GAAG,IAAI,CAiB1D;AAED,iBAAS,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,UAAU,CA0BxD;AAED,iBAAS,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,gBAAgB,CAY9D;AAED,iBAAS,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,cAAc,CAsCjE;AAED,QAAA,MAAM,MAAM;;;;;CAKX,CAAC;AAEF,OAAO,EACH,YAAY,EACf,CAAA;AAGD,YAAY,EACR,SAAS,EACT,KAAK,EACL,IAAI,EACJ,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,UAAU,EACV,cAAc,EACjB,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -8,6 +8,57 @@ function solve(boardInput) {
|
|
|
8
8
|
board: sudoku.toArray(),
|
|
9
9
|
};
|
|
10
10
|
}
|
|
11
|
+
function countSolutions(board) {
|
|
12
|
+
const copy = new SudokuSolver(board);
|
|
13
|
+
let count = 0;
|
|
14
|
+
function backtrack(startIdx = 0) {
|
|
15
|
+
// Prevent hanging on boards with many solutions (only need to know if 0, 1, or >1)
|
|
16
|
+
if (count >= 2)
|
|
17
|
+
return;
|
|
18
|
+
let emptyR = -1;
|
|
19
|
+
let emptyC = -1;
|
|
20
|
+
for (let i = startIdx; i < 81; i++) {
|
|
21
|
+
const r = Math.floor(i / 9);
|
|
22
|
+
const c = i % 9;
|
|
23
|
+
if (copy.isCellEmpty(r, c)) {
|
|
24
|
+
emptyR = r;
|
|
25
|
+
emptyC = c;
|
|
26
|
+
break;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
if (emptyR === -1) {
|
|
30
|
+
count++;
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
const possibles = copy.getPossibles(emptyR, emptyC);
|
|
34
|
+
for (const num of possibles) {
|
|
35
|
+
copy.setSquareValue(emptyR, emptyC, num);
|
|
36
|
+
backtrack(emptyR * 9 + emptyC + 1);
|
|
37
|
+
copy.setCellEmpty(emptyR, emptyC);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
backtrack();
|
|
41
|
+
return count;
|
|
42
|
+
}
|
|
43
|
+
export function bruteForceSolve(board) {
|
|
44
|
+
const copy = new SudokuSolver(board);
|
|
45
|
+
for (let r = 0; r < 9; r++) {
|
|
46
|
+
for (let c = 0; c < 9; c++) {
|
|
47
|
+
if (copy.isCellEmpty(r, c)) {
|
|
48
|
+
for (let num = 1; num <= 9; num++) {
|
|
49
|
+
if (copy.getPossibles(r, c).includes(num)) {
|
|
50
|
+
copy.setSquareValue(r, c, num);
|
|
51
|
+
if (bruteForceSolve(copy.toArray()))
|
|
52
|
+
return copy.toArray();
|
|
53
|
+
copy.setCellEmpty(r, c);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return null;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return copy.toArray();
|
|
61
|
+
}
|
|
11
62
|
function nextMove(boardInput) {
|
|
12
63
|
const sudoku = new SudokuSolver(boardInput);
|
|
13
64
|
const validation = sudoku.validate();
|
|
@@ -50,6 +101,8 @@ function describeBoard(boardInput) {
|
|
|
50
101
|
const initValidation = sudoku.validate();
|
|
51
102
|
if (!initValidation.isValid) {
|
|
52
103
|
return {
|
|
104
|
+
countGivens: sudoku.countPlaced(),
|
|
105
|
+
countEmptyCells: sudoku.countEmptyCells(),
|
|
53
106
|
isValid: false,
|
|
54
107
|
isComplete: false,
|
|
55
108
|
message: initValidation.message,
|
|
@@ -58,20 +111,20 @@ function describeBoard(boardInput) {
|
|
|
58
111
|
};
|
|
59
112
|
}
|
|
60
113
|
let result = {
|
|
114
|
+
countGivens: sudoku.countPlaced(),
|
|
115
|
+
countEmptyCells: sudoku.countEmptyCells(),
|
|
61
116
|
isValid: true,
|
|
62
117
|
isComplete: sudoku.isComplete(),
|
|
63
118
|
message: '',
|
|
64
119
|
difficulty: sudoku.difficulty(),
|
|
65
|
-
solutions:
|
|
120
|
+
solutions: countSolutions(sudoku.toArray()),
|
|
66
121
|
};
|
|
67
122
|
if (result.isComplete) {
|
|
68
|
-
result.solutions = 1;
|
|
69
123
|
result.message = 'Solvable with a single solution';
|
|
70
124
|
}
|
|
71
125
|
else {
|
|
72
126
|
sudoku.solve();
|
|
73
127
|
if (sudoku.isComplete()) {
|
|
74
|
-
result.solutions = 1;
|
|
75
128
|
result.message = 'Unique Solution';
|
|
76
129
|
}
|
|
77
130
|
else {
|
package/dist/move.d.ts
CHANGED
|
File without changes
|
package/dist/move.d.ts.map
CHANGED
|
File without changes
|
package/dist/move.js
CHANGED
|
File without changes
|
package/dist/sudoku.d.ts
CHANGED
|
File without changes
|
package/dist/sudoku.d.ts.map
CHANGED
|
File without changes
|
package/dist/sudoku.js
CHANGED
|
File without changes
|
package/dist/sudokuSolver.d.ts
CHANGED
|
@@ -14,6 +14,9 @@ export default class SudokuSolver {
|
|
|
14
14
|
getPossibles(row: number, col: number): number[];
|
|
15
15
|
setPossibles(row: number, col: number, possibles: number[]): void;
|
|
16
16
|
setSquareValue(row: number, col: number, value: number): void;
|
|
17
|
+
setCellEmpty(row: number, col: number): void;
|
|
18
|
+
getValue(row: number, col: number): number;
|
|
19
|
+
isCellEmpty(row: number, col: number): boolean;
|
|
17
20
|
applyElimination(move: EliminationMove): void;
|
|
18
21
|
applyMove(move: Move): void;
|
|
19
22
|
isComplete(): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sudokuSolver.d.ts","sourceRoot":"","sources":["../src/sudokuSolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,gBAAgB,EAAoB,MAAM,eAAe,CAAC;AACrF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,IAAI,EAAiB,eAAe,EAAE,MAAM,WAAW,CAAC;AAEtE,MAAM,MAAM,SAAS,GACf,YAAY,GACZ,YAAY,GACZ,cAAc,GACd,eAAe,GACf,eAAe,GACf,iBAAiB,GACjB,oBAAoB,GACpB,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,WAAW,GACX,YAAY,GACZ,cAAc,GACd,YAAY,GACZ,aAAa,GACb,eAAe,GACf,aAAa,CAAC;AAEpB,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,YAAY,GAAG,YAAY,CAAC;AAEvF,MAAM,MAAM,oBAAoB,GAC1B,kBAAkB,GAClB,qBAAqB,GACrB,kBAAkB,GAClB,eAAe,GACf,sBAAsB,GACtB,0BAA0B,GAC1B,0BAA0B,GAC1B,sBAAsB,CAAC;AAiF7B,MAAM,CAAC,OAAO,OAAO,YAAY;IAC7B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAYnC;IAEF,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,aAAa,CAAe;gBAExB,KAAK,EAAE,MAAM,GAAG,KAAK;IAOjC,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAS5B,OAAO,IAAI,KAAK;IAIhB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE;IAIhD,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAIjE,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"sudokuSolver.d.ts","sourceRoot":"","sources":["../src/sudokuSolver.ts"],"names":[],"mappings":"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"}
|
package/dist/sudokuSolver.js
CHANGED
|
@@ -72,6 +72,9 @@ export default class SudokuSolver {
|
|
|
72
72
|
this.possiblesGrid[row][col] = possibles.filter((v) => v > 0 && v <= 9).sort((a, b) => a - b);
|
|
73
73
|
}
|
|
74
74
|
setSquareValue(row, col, value) {
|
|
75
|
+
if (value < 1 || value > 9) {
|
|
76
|
+
throw new Error(`Invalid value ${value} at row ${row}, col ${col}`);
|
|
77
|
+
}
|
|
75
78
|
this.board[row][col] = value;
|
|
76
79
|
this.possiblesGrid[row][col] = [];
|
|
77
80
|
const ibox = this.boxIndex(row, col);
|
|
@@ -89,6 +92,27 @@ export default class SudokuSolver {
|
|
|
89
92
|
}
|
|
90
93
|
}
|
|
91
94
|
}
|
|
95
|
+
setCellEmpty(row, col) {
|
|
96
|
+
this.board[row][col] = 0;
|
|
97
|
+
for (let i = 0; i < 9; i++) {
|
|
98
|
+
this.possiblesGrid[row][i] = this.calcSquarePossibles(row, i);
|
|
99
|
+
this.possiblesGrid[i][col] = this.calcSquarePossibles(i, col);
|
|
100
|
+
}
|
|
101
|
+
const ibox = this.boxIndex(row, col);
|
|
102
|
+
const startRow = Math.floor(ibox / 3) * 3;
|
|
103
|
+
const startCol = (ibox % 3) * 3;
|
|
104
|
+
for (let r = startRow; r < startRow + 3; r++) {
|
|
105
|
+
for (let c = startCol; c < startCol + 3; c++) {
|
|
106
|
+
this.possiblesGrid[r][c] = this.calcSquarePossibles(r, c);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
getValue(row, col) {
|
|
111
|
+
return this.board[row][col];
|
|
112
|
+
}
|
|
113
|
+
isCellEmpty(row, col) {
|
|
114
|
+
return this.getValue(row, col) === 0;
|
|
115
|
+
}
|
|
92
116
|
applyElimination(move) {
|
|
93
117
|
for (const { row, col, value } of move.eliminations) {
|
|
94
118
|
this.possiblesGrid[row][col] = this.possiblesGrid[row][col].filter((v) => v !== value);
|
package/dist/utils.d.ts
CHANGED
|
File without changes
|
package/dist/utils.d.ts.map
CHANGED
|
File without changes
|
package/dist/utils.js
CHANGED
|
File without changes
|
package/dist/validate.d.ts
CHANGED
|
File without changes
|
package/dist/validate.d.ts.map
CHANGED
|
File without changes
|
package/dist/validate.js
CHANGED
|
File without changes
|
package/package.json
CHANGED