Bułki są pysznymi słodyczami zrobionymi z warstwy biszkoptu, warstwy śmietany (lub lodów), zwiniętej w spiralę, patrz Wikipedia .
Twoim zadaniem jest pobranie niepustego ciągu fraz ze standardowego wejścia, usunięcie pasków i zrolowanie go jako placek do ciasta zaczynając od środka w prawo do lewej w kierunku przeciwnym do ruchu wskazówek zegara, podczas gdy spacje zaczynają się na dole pierwszego znak frazę, od środka od lewej do prawej, jak w poniższym przykładzie.
Uwaga: fraza będzie warstwą ciasta biszkoptowego, a warstwa kremu będzie reprezentowana jako puste przestrzenie.
Input: Lorem ipsum dolor sit amet, consectetu adipiscing elit, sed do eiusmod
Output with spaces ' ' represented as _
ilegnicsip
t________i
,_srolod_d
s_i____m_a
e_t_oL_u_u
d_a_r__s_t
d_m_emip_e
o_e______t
e_t,consec
i____
usmod
Przypadki testowe
Input: Lorem ipsum dolor sit amet, consectetu adipiscing elit, sed do eiusmod
Output:
ilegnicsip
t i
, srolod d
s i m a
e t oL u u
d a r s t
d m emip e
o e t
e t,consec
i
usmod
Input: Sandbox for Proposed Challenges
Output:
soporp
e r
d aS o
c n f
h dbox
a
llenges
Input: Cake
Output:
aC
k
e
Input: it
Output:
ti
Zasady:
- To jest golf golfowy, więc wygrywa najkrótszy kod.
- Standardowe luki są zabronione.
Odpowiedzi:
Python 2,
202200 bajtów-2 bajty dzięki LevitatingLion
źródło
exec
:exec~i%4*'c=zip(*c[::-1]);'
. To oszczędza dwa bajtyBefunge,
260250 bajtówWypróbuj online!
Podstawową ideą jest to, że tworzymy spiralę w dolnej połowie pola gry, śledząc jednocześnie minimalne i maksymalne współrzędne. Po przetworzeniu wszystkich danych wejściowych iterujemy zakres współrzędnych i zapisujemy zapisaną treść.
Szczegółowe wyjaśnienie
Należy zauważyć, że wartości dx i dy mieszczą się w zakresie od 0 do 3, co odpowiada względnym przesunięciom -1, 0, 1, 0. Aktualizacja kierunku odbywa się przez dodanie 1, moduł 4. Konwersja na względne przesunięcie odbywa się poprzez odejmowanie 1, modulo 2.
źródło