Reference · Rules, solvers and generation
measureSolvedfunction
The same measures from a solve already made — how many positions and branches the solver took — so a caller that has just proved a level (the level tests) does not solve it a second time to measure it.
Import it
import { measureSolved } from "@johnmorrisdotca/tsunagi";
Definition
function measureSolved(layout: string, answer: string, size: number, solved: { nodes: number; branches: number; }): LevelMeasure | null
Parameters
| Name | Type | Description |
|---|---|---|
layout | string | The decoded native board and its rule settings. |
answer | string | The native complete answer string or solved lines specified by the signature. |
size | number | The number of cells on each side of the board. |
solved | { nodes: number; branches: number; } | Solved level numbers, or the solver metrics specified by this signature. |
Returns
LevelMeasure | null
The native level measures, or null for an invalid layout or answer.
Examples
import { TSUNAGI_4 } from "@johnmorrisdotca/tsunagi/levels-4";
import { measureSolved } from "@johnmorrisdotca/tsunagi";
const givens = TSUNAGI_4[0][0];
const answer = TSUNAGI_4[0][1];
console.log(measureSolved(givens,answer,4,{nodes:1,branches:0}));{
pairs: 4,
turns: 0,
longest: 4,
empties: 8,
forcedShare: 1,
nodes: 1,
branches: 0
}What it prints (run when this page was built)