解説
パイプのビットと水の規則
マス番号、ビット、余りの管、一括回転を理解します。
ビットと位置
パイプは北1、東2、南4、西8の四つのビットで表します。turnはこのビットを回します。oppositeに渡すのは別の値で、北0から西3の辺番号です。マス番号は行ごとに左から右へ、0から数えます。コードには寸法、管、水源、排水口、追加規則も入ります。
import {NORTH,EAST,turn,opposite,shapeOf} from "@johnmorrisdotca/suido";
const elbow = NORTH | EAST;
console.log(elbow,turn(elbow),shapeOf(elbow),opposite(0));3 6 elbow 2完成の条件は盤面の種類で決まる
ネットワークではすべての管に水が通り、水漏れがないことが必要です。排水口の盤面ではすべての排水口に届き、水の通る管から漏れなければ、余りの管は乾いたままで構いません。入口と出口の盤面では、枝分かれしない一本の経路を作ります。flowOfは水の通るマス、深さ、漏れを返し、isSolvedがこれらの規則で判定します。隣の開口が合うだけでは十分ではありません。
大きなピースは2×2の正方形です。一括回転は四つのマスを正方形の周りに動かし、管の向きも一緒に回します。固定マスと壁も合法な解答を制約します。従来の固定問題は変わらず、大きなピースには別の問題集があります。ピース、追加規則、構成を参照してください。
この日本語は、まだ日本語を母語とする方の確認を受けていません。訂正を歓迎します。