layoutOf関数
リファレンスの説明と例は英語です。見出しと目次は日本語です。
The layout and answer the lines leave: their ends as stones, lettered in
reading order, with whatever else the board has — blocked cells, bridges
(in two lines' paths, drawn +) and walls.
インポート
import { layoutOf } from "@johnmorrisdotca/tsunagi";
定義
function layoutOf(size: number, paths: readonly number[][], extras?: LinkExtras): { layout: string; answer: string; }
引数
| 名前 | 型 | 説明 |
|---|---|---|
size | number | The number of cells on each side of the board. |
paths | readonly number[][] | The complete grid-filling cell paths. |
extras (省略可) | LinkExtras | Optional blocked cells and native twists. |
戻り値
{ layout: string; answer: string; }
The layout and answer the lines leave: their ends as stones, lettered in reading order, with whatever else the board has — blocked cells, bridges (in two lines' paths, drawn +) and walls.
例
import { TSUNAGI_4 } from "@johnmorrisdotca/tsunagi/levels-4";
import { decodeLayout, layoutOf, linesOfAnswer } from "@johnmorrisdotca/tsunagi";
const givens = TSUNAGI_4[0][0];
const answer = TSUNAGI_4[0][1];
const layout = decodeLayout(givens,4)!;
const solvedLines = linesOfAnswer(layout,answer)!;
console.log(layoutOf(4,solvedLines.map(line=>[...line])));{ layout: 'A..AB..BC..CD..D', answer: 'AAAABBBBCCCCDDDD' }出力(このページを作ったときに実行した結果)
この日本語は、まだ日本語を母語とする方の確認を受けていません。訂正を歓迎します。