solveCrossSumsfunction
Bounded exact counter over across and down runs; an interrupted search never proves uniqueness.
Import it
import { solveCrossSums } from "@johnmorrisdotca/kazu/cross-sums";
Also exported from: @johnmorrisdotca/kazu
Definition
function solveCrossSums(board: CrossSumsBoard, entries?: readonly number[], options?: { limit?: number; nodes?: number; }): CrossSumsSolve
Parameters
| Name | Type | Description |
|---|---|---|
board | CrossSumsBoard | The valid native board with its printed clues and dimensions. |
entries (optional) | readonly number[] | Current row-major entries; omit to search from printed clues. |
options (optional) | { limit?: number; nodes?: number; } | Solution/node limits or native SVG choices specified by the signature. |
Returns
CrossSumsSolve
Bounded exact counter over across and down runs; an interrupted search never proves uniqueness.
Examples
import type { CrossSumsBoard } from "@johnmorrisdotca/kazu/cross-sums";
import { solveCrossSums } from "@johnmorrisdotca/kazu/cross-sums";
const crossSumsBoard: CrossSumsBoard = {"width":5,"height":5,"cells":[{"kind":"black","across":null,"down":null},{"kind":"black","across":null,"down":null},{"kind":"black","across":null,"down":10},{"kind":"black","across":null,"down":7},{"kind":"black","across":null,"down":12},{"kind":"black","across":null,"down":null},{"kind":"black","across":6,"down":null},{"kind":"white"},{"kind":"white"},{"kind":"white"},{"kind":"black","across":null,"down":null},{"kind":"black","across":23,"down":null},{"kind":"white"},{"kind":"white"},{"kind":"white"},{"kind":"black","across":null,"down":null},{"kind":"black","across":null,"down":null},{"kind":"black","across":null,"down":null},{"kind":"black","across":null,"down":null},{"kind":"black","across":null,"down":null},{"kind":"black","across":null,"down":null},{"kind":"black","across":null,"down":null},{"kind":"black","across":null,"down":null},{"kind":"black","across":null,"down":null},{"kind":"black","across":null,"down":null}]};
console.log(solveCrossSums(crossSumsBoard,undefined,{limit:2,nodes:20000}));{
count: 1,
solution: [
0, 0, 0, 0, 0, 0, 0, 2,
1, 3, 0, 0, 8, 6, 9, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0
],
complete: true,
nodes: 0
}What it prints (run when this page was built)