Biorąc pod uwagę sześciokąt artystyczny ASCII jako dane wejściowe, wyjmij taki, którego boki są o jedną jednostkę dłuższe.
_____
____ / \
/ \ / \
/ \ / \
\ \ => \ \
\ / \ /
\____/ \ /
\_____/
Sześciokąty wejściowe będą miały symetrię 180 stopni, ale w przeciwnym razie boki mogą mieć różne długości. Powyżej długości boczne (2, 4, 3) zostają powiększone do (3, 5, 4). Długości boków będą niezerowe.
Sześciokąty są wykonane z podkreślników _
, ukośników/
i odwrotnych ukośników \
. Zwróć uwagę, że w przypadku poziomych krawędzi (wykonanych za pomocą podkreślników) górna krawędź znajduje się na własnej linii, ale dolna krawędź nie.
I / O
Mam zamiar zostać kozłem ofiarnym i wymagać sztuki ascii tutaj formatowania : wejście i wyjście powinno być ciągiem znaków z nowymi liniami reprezentującymi obraz, a nie listą linii. Oczywiście, twój kod może wydrukować każdą linię po kolei, aby wygenerować obraz, lub odczytać STDIN linię do wprowadzenia, jeśli twój język to potrafi.
Detale
Dane wejściowe mogą zawierać opcjonalny znak nowej linii, jeśli chcesz, ale w przeciwnym razie nie będą zawierać pustych linii. Możesz wybrać brak spacji na wejściu lub spacje, aby wstawić każdą linię na tej samej długości (długość najdłuższej linii).
Wyjście powinno być wyrównane do lewej krawędzi ekranu, podobnie jak wejście. Możesz mieć dodatkowe znaki nowej linii powyżej i poniżej, a także spacje końcowe.
Przypadki testowe
Wejście, a następnie wyjście.
_
/ \
\_/
__
/ \
/ \
\ /
\__/
____
/ \
/ \
\ \
\ /
\____/
_____
/ \
/ \
/ \
\ \
\ /
\ /
\_____/
_
/ \
/ /
/ /
/ /
/ /
\_/
__
/ \
/ \
/ /
/ /
/ /
/ /
\ /
\__/
Tabela liderów
<iframe src="https://xmikee1.github.io/ppcg-leaderboard/?id=185760" width="100%" height="100%" style="border: none;">Oops, your browser is too old to view this content! Please upgrade to a newer version of your browser that supports HTML5.</iframe><style>html,body{margin:0;padding:0;height:100%;overflow:hidden}</style>
IEnumerable
znaków?