Skip to the content

Kazu数

Generate checked Sudoku and logic puzzles, read native rules and hints, and draw or embed playable boards.

Kazu is the Japanese word 数 for number. About the name

Contents

Reference · Number-puzzle engines

encodeTowersfunction

Encode grid numbers and four sides of visibility clues as native Skyscrapers givens.

Import it

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

Definition

function encodeTowers(cells: readonly number[], clues: TowerClues): string

Parameters

NameTypeDescription
cellsreadonly number[]

Row-major numeric cells, or expected cell count for step logs as specified by the signature.

cluesTowerClues

Visibility clues on all four sides.

Returns

string

Encode grid numbers and four sides of visibility clues as native Skyscrapers givens.

Examples

import type { KazuPuzzle } from "@johnmorrisdotca/kazu";
import { decodeTowers, encodeTowers, readGivens } 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 printed = readGivens(kind,size,givens)!;
const cells = printed.cells;
const towers = decodeTowers("......................3.2.....4.",4)!;
console.log(encodeTowers(towers.cells,towers.clues));
......................3.2.....4.

What it prints (run when this page was built)

View sourceEdit on GitHubMade from the source of @johnmorrisdotca/kazu 2.1.0.