Le défi
Le plus court code par le nombre de caractères d'identifier et de marquer l'eau des dépressions dans la représentation ASCII de terre de l'entrée.
L'entrée sera une représentation ASCII d'un paysage, d'avoir les collines, les vallées et les terres plates. Le programme doit simuler ce que le paysage pourrait ressembler si elle était inondée de remplissage de tous les vallées avec de l'eau (caractère x
).
Le paysage sera toujours démarrer et arrêter avec le caractère _
et sera au moins 2 caractères, ce qui en fait le plus court de l'entrée __
.
Une colline est définie comme une augmentation, et ne doit pas être rempli avec de l'eau:
__
_/ \_
Une vallée est définie comme la dépression et sera rempli avec de l'eau jusqu'à ce qu'un flatland est rencontré:
_ _
\__/
L'entrée peut être supposé propre et sera composé uniquement de caractères de l'espace (
), saut de ligne (\n
), le trait de soulignement (_
), et en avant et en arrière des barres obliques (/
et \
). L'entrée peut être vu comme une ligne continue, et toutes les entrées qui contiennent ambigu entrée de ligne comme _/_
ou
_ _
\_/
/ \
Est considéré comme invalide.
Concernant les grottes sous-marines, le niveau de l'eau devrait être maintenu si la grotte de niveau passe au-dessus du niveau de l'eau.
Des cas de Test
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\
Code de comptage d'entrée/de sortie (j'.e programme complet).