checkYajilinfunction
Validate a Yajilin answer against the printed clues and complete native rules.
Import it
import { checkYajilin } from "@johnmorrisdotca/kazu/yajilin";
Also exported from: @johnmorrisdotca/kazu
Definition
function checkYajilin(board: YajilinBoard, shaded: readonly boolean[], lines: readonly number[]): YajilinCheck
Parameters
| Name | Type | Description |
|---|---|---|
board | YajilinBoard | The valid native board with its printed clues and dimensions. |
shaded | readonly boolean[] | The current shaded-cell flags in row-major order. |
lines | readonly number[] | The current native loop-edge states. |
Returns
YajilinCheck
Validate a Yajilin answer against the printed clues and complete native rules.
Examples
import type { YajilinBoard, YajilinPuzzle } from "@johnmorrisdotca/kazu/yajilin";
import { checkYajilin } from "@johnmorrisdotca/kazu/yajilin";
const yajilinBoard: YajilinBoard = {"width":5,"height":5,"clues":[{"direction":"left","count":0},null,{"direction":"right","count":1},null,{"direction":"up","count":0},null,null,null,null,null,{"direction":"right","count":0},null,{"direction":"left","count":0},null,{"direction":"down","count":1},{"direction":"left","count":0},null,null,null,null,null,{"direction":"up","count":1},{"direction":"down","count":0},null,{"direction":"down","count":0}]};
const yajilinSolution: YajilinPuzzle["solution"] = {"shaded":[false,true,false,true,false,true,false,false,false,true,false,false,false,false,false,false,false,false,false,true,true,false,false,true,false],"edges":[5,26,6,28,31,33,13,14]};
console.log(checkYajilin(yajilinBoard,yajilinSolution.shaded,yajilinSolution.edges));{ ok: true, errors: [] }What it prints (run when this page was built)