本文へ移動

Kazu数

検証済みの数独や論理パズルを作り、標準の規則とヒントを読み、盤を描いたり埋め込んだりできます。

「数」は数字を表す言葉です。 名前について(英語)

目次

リファレンス · 数字パズルのエンジン

countKazuSolutions関数

リファレンスの説明と例は英語です。見出しと目次は日本語です。

How many answers a puzzle has, up to limit (two by default, so "many" costs no more than "two"): 1 is a puzzle, 0 is a grid that cannot be finished, 2 is a guessing game. Null, never a number, for givens that are not a puzzle of this kind and side, and for a search that ran past budget steps (Sudoku, Jigsaw, Diagonal and Sum Cages count steps; the other two have no budget): "I could not say" is not "there are none".

インポート

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

定義

function countKazuSolutions(kind: KazuKind, size: number, givens: string, limit?: number, budget?: number): number | null

引数

名前型説明
kind"number-place" | "jigsaw" | "diagonal" | "sum-cages" | "more-or-less" | "towers"

The native number-grid puzzle key.

sizenumber

The supported square grid side length.

givensstring

The original native printed-clue code.

limit (省略可)number

Stop after finding this many solutions.

budget (省略可)number

The maximum bounded solver work.

戻り値

number | null

The bounded answer count, or null for invalid kind, size or givens; a budget-limited count alone does not prove uniqueness.

例

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

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

出力(このページを作ったときに実行した結果)

ソースを見るGitHub で編集@johnmorrisdotca/kazu 2.1.0 のソースから作成しました。

この日本語は、まだ日本語を母語とする方の確認を受けていません。訂正を歓迎します。