Avec le grand krach de l'économie universelle, la demande de planètes sur mesure a également plongé. Les Magrathiens ont également dû gérer des revenus plus stables provenant d’une catégorie plus large de clients. Par conséquent, ils ont inventé la chaîne de montagne à faire soi-même (ou petits ravages) pour les personnes disposant d'un petit budget et ne pouvant se permettre une planète complète.
Les montagnes sont construites selon le plan du client (aka chaînes de chiffres et de points) et livrés en utilisant ascii-art (composé de ,
/
, \
, ^
et v
).
Tâche
Ecrivez un programme complet qui prend en entrée (chaîne unique) soit à partir de STDIN, soit sous forme d'argument et sort à STDOUT. Ce casse-tête est un code-golf, alors veuillez montrer votre tentative de jouer au golf.
Contribution
Une chaîne de points et de chiffres constituant la base de la chaîne de montagnes. Chaque chaîne est exactement aussi longue que nécessaire pour supporter les montagnes et chaque pic est donné par un chiffre au lieu d'un point, indiquant la hauteur du pic.
Sortie
Une version ascii de la chaîne de montagne.
- Chaque chiffre de l’entrée représente exactement un pic (
^
) à la hauteur indiquée par le chiffre (c’est-à-dire que 9 correspond à la hauteur la plus élevée). - Il ne doit pas y avoir de pics supplémentaires dans la sortie (c'est-à-dire aux endroits où il y a un point dans l'entrée).
- Montagnes sont de forme triangulaire, à savoir les pentes sont créés en utilisant
/
et\
caractères. - Les passes où deux montagnes se chevauchent sont façonnées à l'aide du personnage
v
. - Pas de nouvelles lignes superflues ni de lignes vierges.
- Les lignes de remplissage avec des espaces de fin sont facultatives.
Vous pouvez supposer que l'entrée fournie est valide, c'est-à-dire qu'il existe toujours une solution conforme aux règles (par exemple, une entrée de 13..
ne donnerait pas lieu à une configuration valide et pourrait être ignorée). De plus, il y a exactement autant de points sur chaque côté que les montagnes ne doivent pas être recadrées.
Exemples
La première ligne montre l'entrée, toutes les autres lignes constituent la sortie souhaitée. (En fait, les montagnes ont l'air beaucoup mieux dans ma console qu'ici.)
1
^
11
^^
1.2.
^
^/ \
.2.3..
^
^/ \
/ \
.2..3..
^
^ / \
/ v \
...4...3...3..
^
/ \ ^ ^
/ \/ \ / \
/ v \
1
, est \n\n\n\n\n\n\n\n^
autorisé?