モグラ塚と山のある一連の地形が与えられます:
/\
/ \
_/\__ / \
___/ \_/ \_
____/\___/ \___
あなたの仕事は、文字列内のすべてのモグラヒルを同じ列の中央にある同等の山に置き換えることです。残りの文字列は影響を受けない必要があります。これには、文字列の先頭に追加の行が必要になる場合があります。
モグラ塚は地形がダウンした場所の地形が上がる隣接する列で構成され、すぐ隣の列が続きます。最短辺は正確に1列幅でなければなりません。
これらはすべてモグラ塚です。
_____/\______
/\________
__/
________/\
\__
\ /
\ /
\ /
\ /
\/\_/
これらはモグラ塚ではありません:
/\
___/ \______
___
_____/ \___
____ _______
\/
山はモグラ塚似ているが、最も短い辺が高い代わりに、一方の4つのラインです。
例
/\
/ \
-> / \
____/\____ _/ \_
/\
/ \
/ \
__ -> / \__
_ /\__/ __/
\___/
/\
/ \
-> / \
/\ /\/ \
_/ \__/\_____ _/ \_
_ _ _ _
\ / \ /\ /
\ / \ / \ /
\ / \ / \ /
\ / -> \/ \/
\ /
\ /
\/\/
/\ /\
/ \ / \
/ \ / \
_ -> _/ \/ \
\ \
\ \
\/\______/\_______ \_
/\ /\ /\
/ \ /\ / \ / \
_/\__ / \ -> / \ / \ / \
___/ \_/ \_ / \ __/ \_/ \_
____/\___/ \___ _/ \/ \___
追加の規則
- 標準的な抜け穴は禁止されています。
- 入力および出力は、合理的な形式で作成できます。
- 入力文字列の末尾に空白があるかどうかを想定できます。
- あなたが必要とするかもしれない山のために、モグラヒルの間だけでなく、弦の側面にも常に十分なスペースがあります。
- モグラヒルを山に置き換えると、追加のモグラヒルが作成される場合、それらのモグラヒルを山に変える必要はありません。
- 同じ列で地形を上下に移動することはできません。この場合、地形は移動しません。
- 特定の列が山の一部にならない場合、その高さは変わらないままでなければなりません。
これはcode-golfであるため、バイト単位の最短回答が優先されます。
これはいいチャレンジです!
—
ガレンイワノフ
最後から2番目の例は、7つの\と1つの_ではなく、4つの\と4つの_で終わるはずです。
—
ngm
最初と最後の文字は垂直方向の位置を変更してはならず、またできるだけ少ない文字を変更する必要があるというあなたの意図はありますか?これは、特に最後から2番目のものが唯一の正しい答えである場合、例が示唆しているように思われます。
—
ngm
チャレンジ仕様を編集して、これらのポイントを明確にすることをお勧めします。
—
ngm
さらに、最後のルール「地形は同じ列で上下に移動することはできません」-それはどういう意味ですか?確かに「地形」は3つのキャラクターのうちの1つにすぎない
—
チャスブラウン
/, \, _ので、どうして同時に上下するのでしょうか。