Skip to the content

Meikyuu迷宮

Generate seeded mazes and arrow puzzles, follow numbered levels, and play on flat grids or three-dimensional surfaces.

Meikyuu is the Japanese word 迷宮 for labyrinth. About the name

Contents

Reference · Surface maze rules and geometry

checkSolidAnswerfunction

Whether a list of cells is the answer: it starts at the start, ends at the goal, steps from each cell to one joined to it by a passage, and never visits a cell twice. It takes time in proportion to the line, never to the solid.

Import it

import { checkSolidAnswer } from "@johnmorrisdotca/meikyuu/3d";

Definition

function checkSolidAnswer(maze: SolidMaze, cells: readonly number[]): boolean

Parameters

NameTypeDescription
mazeSolidMaze

The valid flat/surface maze or required maze-core fields.

cellsreadonly number[]

A cell-index path or total count specified by this signature.

Returns

boolean

Whether a list of cells is the answer: it starts at the start, ends at the goal, steps from each cell to one joined to it by a passage, and never visits a cell twice. It takes time in proportion to the line, never to the solid.

Examples

import type { SolidRecipe } from "@johnmorrisdotca/meikyuu/3d";
import { buildSolidMaze, checkSolidAnswer, solidSolutionOf } from "@johnmorrisdotca/meikyuu/3d";

const solidRecipe: SolidRecipe = {kind:"cube",n:2,algorithm:"backtracker",seed:42};
const solid = buildSolidMaze(solidRecipe);
console.log(checkSolidAnswer(solid,solidSolutionOf(solid)));
true

What it prints (run when this page was built)

View sourceEdit on GitHubMade from the source of @johnmorrisdotca/meikyuu 3.2.0.