Za pomocą ASCII wydrukuj fragment płytki sześciokątnej.
Oto mała sekcja:
/\__/\
/_/ \_\
/\__/\ \__/ /\__/\
/_/ \_\/__\/_/ \_\
\ \__/ /\__/\ \__/ /
\/__\/_/ \_\/__\/
/\__/\ \__/ /\__/\
/_/ \_\/__\/_/ \_\
\ \__/ /\__/\ \__/ /
\/__\/_/ \_\/__\/
\ \__/ /
\/__\/
Oto większy dział:
\ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\
\/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\
/\__/\ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\ \__/ /
/_/ \_\/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\/__\/
\ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\
\/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\
/\__/\ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\ \__/ /
/_/ \_\/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\/__\/
\ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\
\/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\
/\__/\ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\ \__/ /
/_/ \_\/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\/__\/
Wyzwanie
Biorąc pod uwagę 2 liczby całkowite h
i w
, gdzie h
jest wysokość i w
szerokość, wypisz hxw
fragment płytki sześciokątnej.
Przykłady
Wejście 1
4x4
Wyjście 1
/\__/\ \__/ /\__/\ \__/ /
/_/ \_\/__\/_/ \_\/__\/
\ \__/ /\__/\ \__/ /\__/\
\/__\/_/ \_\/__\/_/ \_\
/\__/\ \__/ /\__/\ \__/ /
/_/ \_\/__\/_/ \_\/__\/
\ \__/ /\__/\ \__/ /\__/\
\/__\/_/ \_\/__\/_/ \_\
/\__/\ \__/ /\__/\ \__/ /
/_/ \_\/__\/_/ \_\/__\/
\ \__/ /\__/\ \__/ /\__/\
\/__\/_/ \_\/__\/_/ \_\
/\__/\ \__/ /\__/\ \__/ /
/_/ \_\/__\/_/ \_\/__\/
\ \__/ /\__/\ \__/ /\__/\
\/__\/_/ \_\/__\/_/ \_\
Wejście 2
3x3
Wyjście 2
/\__/\ \__/ /\__/\
/_/ \_\/__\/_/ \_\
\ \__/ /\__/\ \__/ /
\/__\/_/ \_\/__\/
/\__/\ \__/ /\__/\
/_/ \_\/__\/_/ \_\
\ \__/ /\__/\ \__/ /
\/__\/_/ \_\/__\/
/\__/\ \__/ /\__/\
/_/ \_\/__\/_/ \_\
\ \__/ /\__/\ \__/ /
\/__\/_/ \_\/__\/
Wejście 3
1x3
Wyjście 3
/\__/\ \__/ /\__/\
/_/ \_\/__\/_/ \_\
\ \__/ /\__/\ \__/ /
\/__\/_/ \_\/__\/
Wejście 4
3x6
Wyjście 4
/\__/\ \__/ /\__/\ \__/ /\__/\ \__/ /
/_/ \_\/__\/_/ \_\/__\/_/ \_\/__\/
\ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\
\/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\
/\__/\ \__/ /\__/\ \__/ /\__/\ \__/ /
/_/ \_\/__\/_/ \_\/__\/_/ \_\/__\/
\ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\
\/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\
/\__/\ \__/ /\__/\ \__/ /\__/\ \__/ /
/_/ \_\/__\/_/ \_\/__\/_/ \_\/__\/
\ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\
\/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\
Wyjaśnienia
- Moje pytanie jest podobne do tego: Me Want Honeycomb .
- Dane wejściowe będą w jednym wierszu w formularzu
hxw
. - Wyjście na standardowe wyjście (lub coś podobnego).
- To jest golf golfowy, więc wygrywa najkrótsza odpowiedź w bajtach.
Odpowiedzi:
Befunge, 137 bajtów
Wydaje mi się, że stworzyłem rodzaj pistoletu ręcznego scifi.
Wypróbuj online!
Wyjaśnienie
źródło
Lua,
174176156 bajtówKod drukuje wysokość-ilość linii, a nie wysokość-ilość sześciokątów. Dodano
*4
, że to naprawiło, ale dodano 2 dodatkowe bajty. Zaoszczędzono kilka bajtów, zmieniając licznik z if na modulo i umieszczając dwaio.read()
s w jednym.Wykorzystuje
io.read()
jako dane wejściowe.Replikuje ciągi szerokość-ilość razy przez
string:rep(width)
, a następnie iteruje wysokość-ilość razy za pomocą pętli for. Potrzebne[[]]
(dosłowne ciągi znaków), ponieważ odwrotne ukośniki naprawdę spieprzyły sprawę.Stara wersja:
źródło
Python 2, 180 bajtów
Pobiera dane wejściowe jako dwie liczby całkowite
Wejście:
2,7
Wynik:
źródło
Partia, 266 bajtów
:c
Podprogram wykonuje całą zdobyciem o łączenie elementów ze sobą w jednej linii; jest on wywoływany:l
4 razy (choć jeden przez upadek, ustawiając:l
argumenty jako nadzbiór:c
), aby wygenerować 4 linie dla każdego rzędu pierścieni. Zamiast tego istniała możliwość wpadnięcia do ostatniego rzędu pierścieni, ale okazało się, że jest on o 5 bajtów dłuższy.źródło