Ti viene data una serie di terreni, con talpe e montagne:
/\
/ \
_/\__ / \
___/ \_/ \_
____/\___/ \___
Il tuo compito è quello di sostituire ogni molehill nella stringa con una montagna equivalente centrata nella stessa colonna. Il resto della stringa non deve essere interessato. Ciò potrebbe richiedere righe aggiuntive all'inizio della stringa.
Un molehill è costituito da colonne adiacenti in cui il terreno sale, immediatamente seguito da colonne adiacenti in cui il terreno scende. Il lato più corto deve essere esattamente largo una colonna.
Questi sono tutti molehills:
_____/\______
/\________
__/
________/\
\__
\ /
\ /
\ /
\ /
\/\_/
Questi non sono talpa:
/\
___/ \______
___
_____/ \___
____ _______
\/
Una montagna è come una molehill, ma il lato più corto è alto quattro righe anziché uno.
Esempi
/\
/ \
-> / \
____/\____ _/ \_
/\
/ \
/ \
__ -> / \__
_ /\__/ __/
\___/
/\
/ \
-> / \
/\ /\/ \
_/ \__/\_____ _/ \_
_ _ _ _
\ / \ /\ /
\ / \ / \ /
\ / \ / \ /
\ / -> \/ \/
\ /
\ /
\/\/
/\ /\
/ \ / \
/ \ / \
_ -> _/ \/ \
\ \
\ \
\/\______/\_______ \_
/\ /\ /\
/ \ /\ / \ / \
_/\__ / \ -> / \ / \ / \
___/ \_/ \_ / \ __/ \_/ \_
____/\___/ \___ _/ \/ \___
Regole aggiuntive
- Sono vietate le scappatoie standard .
- L'input e l'output possono essere in qualsiasi formato ragionevole.
- È possibile assumere la presenza o l'assenza di spazi vuoti finali nella stringa di input.
- Ci sarà sempre abbastanza spazio ai lati della corda e tra le talpe per qualsiasi montagna di cui potresti aver bisogno.
- Se la sostituzione dei Molehills con le montagne crea ulteriori Molehills, non è necessario trasformare tali Molehills in montagne.
- Il terreno non può andare su e giù nella stessa colonna. In questo caso, il terreno non si muove.
- Se una determinata colonna non diventa parte di una montagna, la sua altezza deve rimanere invariata.
Questo è code-golf , quindi vince la risposta più breve in byte.
/, \, _, quindi come potrebbe eventualmente andare su e giù allo stesso tempo?