Skip to the content

Kazu数

Generate checked Sudoku and logic puzzles, read native rules and hints, and draw or embed playable boards.

Kazu is the Japanese word 数 for number. About the name

Contents

Reference · Cross Sums rules

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

NameTypeDescription
boardCrossSumsBoard

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)

View sourceEdit on GitHubMade from the source of @johnmorrisdotca/kazu 2.1.0.