本文へ移動

Suido水道

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

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

目次

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

bigShapesIn関数

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

The big pieces of a board and which shape each is, read from masks (one for every cell of the board, as a board's pieces or an answer's stand): the board's pieces for the facing it starts in, an answer's for the facing the water needs. A big piece whose four masks make none of the shapes is left out, which no board that decodes has.

インポート

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

定義

function bigShapesIn(layout: { width: number; bigs?: readonly number[]; }, masks: readonly number[]): BigOnBoard[]

引数

名前型説明
layout{ width: number; bigs?: readonly number[]; }

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

masksreadonly number[]

Current pipe masks in row-major cell order.

戻り値

BigOnBoard[]

The big pieces of a board and which shape each is, read from masks (one for every cell of the board, as a board's pieces or an answer's stand): the board's pieces for the facing it starts in, an answer's for the facing the water needs. A big piece whose four masks make none of the shapes is left out, which no board that decodes has.

例

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

const row = SUIDO_5X5[0];
const code = row[0];
const layout = decodeLayout(code)!;
const blockLayout = {...layout,bigs:[0]};
console.log(bigShapesIn(blockLayout,blockLayout.cells).length);
0

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

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

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