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 · Number-puzzle engines

decodeCellsfunction

".3.1" at a side of 2 → [0, 3, 0, 1], or null for a string that is not a grid of that size: the wrong length, a value past the side, a stray character. Null rather than a grid with holes, because a grid with holes is a grid.

Import it

import { decodeCells } from "@johnmorrisdotca/kazu";

Definition

function decodeCells(code: string, size: number): number[] | null

Parameters

NameTypeDescription
codestring

The native encoded clues, entries or notes specified by the signature.

sizenumber

The supported square grid side length.

Returns

number[] | null

".3.1" at a side of 2 → [0, 3, 0, 1], or null for a string that is not a grid of that size: the wrong length, a value past the side, a stray character. null rather than a grid with holes, because a grid with holes is a grid.

Examples

import type { KazuPuzzle } from "@johnmorrisdotca/kazu";
import { decodeCells } from "@johnmorrisdotca/kazu";

const puzzle: KazuPuzzle = {"kind":"number-place","size":4,"level":"easy","seed":42,"givens":"14..2..1412.3..4","solution":"1432234141233214"};
const size = puzzle.size;
const answer = puzzle.solution;
const solution = decodeCells(answer,size)!;
console.log(decodeCells(answer,size));
[
  1, 4, 3, 2, 2, 3,
  4, 1, 4, 1, 2, 3,
  3, 2, 1, 4
]

What it prints (run when this page was built)

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