hintKazu関数
リファレンスの説明と例は英語です。見出しと目次は日本語です。
The next cell a person could fill in, and why (see KazuHint). entries is what the player has
written, row-major (0 for empty; printed cells are ignored). answer is the puzzle's solution as a
cells code; left out, it is worked out from the givens. Null when every cell is right, or when
the givens are not a puzzle with exactly one answer: there is nothing true to say.
インポート
import { hintKazu } from "@johnmorrisdotca/kazu";
定義
function hintKazu(kind: KazuKind, size: number, givens: string, entries: readonly number[], answer?: string): KazuHint | null
引数
| 名前 | 型 | 説明 |
|---|---|---|
kind | "number-place" | "jigsaw" | "diagonal" | "sum-cages" | "more-or-less" | "towers" | The native number-grid puzzle key. |
size | number | The supported square grid side length. |
givens | string | The original native printed-clue code. |
entries | readonly number[] | The player entries, row-major, zero for blanks and printed cells. |
answer (省略可) | string | undefined | The complete native answer code. |
戻り値
KazuHint | null
An actionable cell/value hint, or null for invalid input, unavailable answer or a complete grid.
例
import type { KazuPuzzle } from "@johnmorrisdotca/kazu";
import { decodeCells, hintKazu, newKazuGame } 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;
const answer = puzzle.solution;
const solution = decodeCells(answer,size)!;
const game = newKazuGame(kind,size,givens)!;
console.log(hintKazu(kind,size,givens,game.entries,answer));{
cell: 2,
value: 3,
why: 'only-number',
by: undefined,
replaces: false
}出力(このページを作ったときに実行した結果)
この日本語は、まだ日本語を母語とする方の確認を受けていません。訂正を歓迎します。