checkKazu関数
リファレンスの説明と例は英語です。見出しと目次は日本語です。
Whether an answer solves a puzzle: O(cells), no search, nothing remembered between calls. A browser runs it to say "done"; a server runs it before it believes a solve, so a grid that is right is accepted and a grid that was merely posted is not. It refuses rather than repairs: a grid of the wrong size, a value out of range or a given moved is a "no" with its reason, never a best guess at what was meant.
The rules of each puzzle are restated here rather than shared with the solver on purpose: the solver is what MADE the puzzle, and a check that reads the solver's mind proves only that the solver agrees with itself.
インポート
import { checkKazu } from "@johnmorrisdotca/kazu";
定義
function checkKazu(kind: KazuKind, size: number, givens: string, answer: string): KazuCheck
引数
| 名前 | 型 | 説明 |
|---|---|---|
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. |
answer | string | The complete native answer code. |
戻り値
KazuCheck
Whether an answer solves a puzzle: O(cells), no search, nothing remembered between calls. A browser runs it to say "done"; a server runs it before it believes a solve, so a grid that is right is accepted and a grid that was merely posted is not. It refuses rather than repairs: a grid of the wrong size, a value out of range or a given moved is a "no" with its reason, never a best guess at what was meant.
例
import type { KazuPuzzle } from "@johnmorrisdotca/kazu";
import { checkKazu, 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 kind = puzzle.kind;
const size = puzzle.size;
const givens = puzzle.givens;
const answer = puzzle.solution;
const solution = decodeCells(answer,size)!;
console.log(checkKazu(kind,size,givens,answer));{ ok: true }出力(このページを作ったときに実行した結果)
この日本語は、まだ日本語を母語とする方の確認を受けていません。訂正を歓迎します。