問題
入力所与のa
任意の入力形式で文字のグリッドであれば出力の各「ブロック」1つだけの要素を有するものです。
そして入力b
bは入力と同じサイズの数値のグリッドですa
。
道路には2つのタイプがあります。1はでマークされた石の道路を@
表し、2はでマークされた未舗装の道路を表します#
@
道路は、ブロックの中心と道路側はグリッドセルの境界に拡張されることが、隣接している場合、サイズ6x6のです#
道路は、ブロックの中央に道路側はグリッドセルの境界に拡張されることが、隣接している場合、サイズ4×4であります
出力グリッドは、入力中にASCII文字の8×8の行数でオフセットa
し、入力から「道路」オーバーレイb
などを
入力 a=[[a,b,a],[b,a,b],[a,b,a]] b=[[1,1,1],[2,0,1],[2,0,0]]
出力:
ステップ1:グリッド(入力の8x8表現a
)
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
ステップ2:で表される道路でオーバーレイするb
:
aaaaaaaabbbbbbbbaaaaaaaa
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@abbbbbbbba@@@@@@a
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaabbbbbbbb
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
ステップ3:各行をlinenumberでオフセットします。
aaaaaaaabbbbbbbbaaaaaaaa
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@abbbbbbbba@@@@@@a
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaabbbbbbbb
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
ルール:
- 先頭の空白または改行を使用できます。
- 末尾の空白と改行を許可します。
- これはコードゴルフなので、最短のコードが勝ちます
これは、私が考えることができるすべてのエッジケースを含む追加のテストケースです。
なぜ1つの改行しか許可されないのですか?(空白を含む)先頭の改行はありますか?
—
dzaima
追加のテストケースで
—
Zgarb 2017
a
は、配列は配列よりも小さいですb
。
@dzaimaなぜもっと許可されるべきですか?
—
LiefdeWen 2017
@LiefdeWen彼らは悪いことをしないで、より多くのゴルフの機会を与えます
—
dzaima '18 / 07/18
あなたの質問は明確に定義されていないようです。まず、テストケースでは
['.', ',', '.', ',', '.', ',', '.']
、入力aの2行目はですが、出力はその行のようでした[',', '.', ',', '.', ',', '.', ',']
。また、テストケースの出力としてこれを使用できない理由:gist.github.com/anonymous/dfcf3b754464f3ca4394d34e9f3bf123 入力bの最初の行の2番目の1が2つの2に隣接していることに注意してください。なぜ最初の2つ(同じ行)だけに接続することにしたのですか?