入力
横に並べられた3x3のサブ行列で構成される空でないバイナリ行列。
仕事
あなたの仕事は、3x3のサブマトリックスの中から有効なサイコロパターン(以下で説明)を識別することです。それぞれの有効なパターンは、対応するサイコロの価値があります。無効なパターンは0の価値があります。
出力
有効なサイコロ値の合計。
サイコロパターン
例
次の行列の予想出力は14がダイス含まれているため、5、6及び3(右へ、上から下へ、左から)無効パターンが続くと、。
ルール
- マトリックスの幅と高さの両方が3の倍数であることが保証されています。
- グリッド上で適切に配置されていない部分行列を無視する必要があります(3番目のテストケースを参照)。より正式に、0インデックス付けを想定:考慮される各サブマトリックスの左上のセルの座標は形式です。
- これはcode-golfです。
テストケース
// 0
[ [ 1,0,0 ],
[ 0,0,1 ],
[ 1,0,0 ] ]
// 2
[ [ 0,0,1 ],
[ 0,0,0 ],
[ 1,0,0 ] ]
// 0 (0 + 0)
[ [ 0,0,1,0,1,0 ],
[ 0,0,0,1,0,0 ],
[ 0,0,1,0,1,0 ] ]
// 9 (3 + 3 + 3)
[ [ 1,0,0,0,0,1,1,0,0 ],
[ 0,1,0,0,1,0,0,1,0 ],
[ 0,0,1,1,0,0,0,0,1 ] ]
// 6 (6 + 0)
[ [ 1,0,1 ],
[ 1,0,1 ],
[ 1,0,1 ],
[ 1,0,1 ],
[ 1,0,0 ],
[ 1,0,1 ] ]
// 14 (5 + 6 + 3 + 0)
[ [ 1,0,1,1,1,1 ],
[ 0,1,0,0,0,0 ],
[ 1,0,1,1,1,1 ],
[ 1,0,0,0,0,0 ],
[ 0,1,0,0,1,0 ],
[ 0,0,1,0,1,0 ] ]
// 16 (1 + 2 + 3 + 4 + 0 + 6)
[ [ 0,0,0,1,0,0,1,0,0 ],
[ 0,1,0,0,0,0,0,1,0 ],
[ 0,0,0,0,0,1,0,0,1 ],
[ 1,0,1,1,1,1,1,0,1 ],
[ 0,0,0,1,0,1,1,0,1 ],
[ 1,0,1,1,1,1,1,0,1 ] ]