Jeśli rzucisz jajko ASCII w danym kierunku, otrzymujesz ikonę ASCII o rozmiarze n . „Zaczyna się” od jednego o
(żółtko) i kontynuuje w danym kierunku z „liniami” składającymi się z 2 do n *
. Te *
są oddzielone jedną „spacją”, a o
wszystkie „linie” z nich *
są oddzielone „liniami” z „przestrzeni”.
Kierunek ikona może być jednym z ośmiu kierunków o
, na przykład:
1 2 3
4 o 5
6 7 8
Oto przykłady ikonami ASCII o wielkości 4 w kierunkach 5
, 2
a 3
odpowiednio. Po lewej stronie jest rzeczywista ikona ASCII, a po prawej stronie jest taka sama ikona ale z „linii” w „przestrzeni” zastąpiono rzeczywistych „linii” (czyli -
czy \
lub |
w zależności od kierunku) po prostu wyjaśnić, co rozumie się przez „linia” przestrzeni.
Size 4, direction 5
* | | |*
* | |*|
* * |*| |*
o * o| |*|
* * |*| |*
* | |*|
* | | |*
Size 4, direction 2
* * * * * * * *
-------
* * * * * *
-------
* * * *
-------
o o
Size 4, direction 3
* *
\
* * *\*
\ \
* * * *\*\*
\ \ \
o * * * o\*\*\*
Wyzwanie
Biorąc pod uwagę n ≥ 1 i jeden z 8 możliwych kierunków, napisz funkcję lub program, który generuje ikonę ASCII o rozmiarze n w danym kierunku.
Wejście i wyjście
Dowolny spójny, rozsądny format wejściowy jest dozwolony. Nie musisz mapować wskazówek dojazdu do liczb całkowitych od 1 do 8 w taki sam sposób, jak ja - jeśli jakiś inny sposób określania kierunku jest łatwiejszy, kontynuuj. Ale powiedz, co zrobiłeś, jeśli nie jest to jasne.
Dane wyjściowe będą składać się z o
, *
spacji (U + 0020) i nowych linii (U + 000A), które wytwarzają ikonę ASCII. Wiodące, końcowe, w przeciwnym razie dozwolone są dodatkowe białe znaki w dowolnej linii.
Zasady
To jest golf golfowy . Obowiązują standardowe zasady.
Więcej przykładów
Size 1, any direction
o
Size 3, direction 6
* * o
* *
*
Size 5, direction 7
o
* *
* * *
* * * *
* * * * *