チャレンジ
入力からの土地の ASCII 表現で水のくぼみを識別してマークするための、文字数による最短コード。
入力は、丘、谷、平地を含む風景の ASCII 表現になります。プログラムは、 が浸水した場合の風景をシミュレートする必要があります。つまり、すべての谷が水で満たされます (文字x
)。
ランドスケープは常に文字と共に開始および停止し、_
少なくとも 2 文字の長さで、最短の入力になります__
。
丘はレイズとして定義され、水で満たされるべきではありません:
__
_/ \_
谷はくぼみとして定義され、平地に遭遇するまで水で満たされます。
_ _
\__/
入力はクリーンであると見なすことができ、スペース ( )、改行 (
\n
)、アンダースコア ( _
)、スラッシュ (/
および\
) の文字のみで構成されます。_/_
入力は連続した行と見なすことができ、またはなどのあいまいな行入力を含む入力
_ _
\_/
/ \
無効と見なされます。
水中洞窟については、洞窟レベルが水位を上回った場合、水位を維持する必要があります。
テストケース
Input:
__/\__
\__
\ ___ ___________
/ / \_ \_
\_____/ \__ _/
\/
Output:
__/\__
\__
\ ___ ___________
/xxxxxx/ \xxxxxx\_
\xxxxx/ \xxxxx/
\/
Input:
__ ___
/ \_____/
/ _______
________ / \ /
_____/ \ /__ \ \_
____ / \ /__/ __/
\_ / \ ____/
\______\ /____/
Output:
__ ___
/ \xxxxx/
/ _______
________ / \ /
_____/ \xxx/__ \xxxx\_
____ / \xxxx/__/xxxxx/
\xxxxxxxx/ \xxxxxxxxx/
\xxxxxx\ /xxxx/
Input:
__ _
_ ____ ____ _____/ \ /
\ / \ __________/ \ __/ ___ /___\
\___/ \ \ \ \___/ /_
/________\ \___________\
Output:
__ _
_ ____ ____ _____/ \xxx/
\xxxxx/ \xxxxxxxxxxxxxxxxxx/ \xxxxxx/ ___ /xxx\
\xxx/ \xxxxxxx\ \xxx\___/xx/_
/xxxxxxxx\ \xxxxxxxxxxx\
コード カウントには、入力/出力 (つまり、完全なプログラム) が含まれます。