本文へ移動

Suido水道

管を回してポンプと排水口をつなぎます。収録された問題やシード付きの問題で遊べます。

「水道」は、水を届ける設備を表す言葉です。 名前について(英語)

目次

リファレンス · 管・ルール・解法

symmetryKey関数

リファレンスの説明と例は英語です。見出しと目次は日本語です。

A board's identity up to turning and mirroring it: the smallest of the codes of its eight turns and mirrors, with every piece the water does not go through (it may face any way) set to one facing. Two boards with the same key are the same puzzle. solution is the board with its pieces facing as an answer has them.

インポート

import { symmetryKey } from "@johnmorrisdotca/suido";

定義

function symmetryKey(layout: Layout, solution: readonly number[]): string

引数

名前型説明
layoutLayout

The decoded board with its dimensions, pipe masks and rule settings.

solutionreadonly number[]

The solved pipe masks in row-major cell order.

戻り値

string

A board's identity up to turning and mirroring it: the smallest of the codes of its eight turns and mirrors, with every piece the water does not go through (it may face any way) set to one facing. Two boards with the same key are the same puzzle. solution is the board with its pieces facing as an answer has them.

例

import { SUIDO_5X5 } from "@johnmorrisdotca/suido/levels-5x5";
import { decodeLayout, symmetryKey } from "@johnmorrisdotca/suido";
import { levelSolution } from "@johnmorrisdotca/suido/levels";

const row = SUIDO_5X5[0];
const code = row[0];
const layout = decodeLayout(code)!;
const solution = levelSolution(row)!;
console.log(symmetryKey(layout,solution));
5x5:6aaIE56IE57bafd5Ca9BjaaaI

出力(このページを作ったときに実行した結果)

ソースを見るGitHub で編集@johnmorrisdotca/suido 1.7.0 のソースから作成しました。

この日本語は、まだ日本語を母語とする方の確認を受けていません。訂正を歓迎します。