Roll Cakes sind köstliche Süßigkeiten, die aus einer Schicht Biskuitkuchen, einer Schicht Sahne (oder Eiscreme), die als Spirale gerollt sind, hergestellt werden (siehe Wikipedia) .
Ihre Aufgabe ist es, eine nicht leere Phrasenzeichenfolge aus der Standardeingabe zu erhalten, die Leerzeichen zu entfernen und sie als Rollenkuchen zu rollen, beginnend von der Mitte von rechts nach links im Gegenuhrzeigersinn, während die Leerzeichen am unteren Rand des ersten beginnen Phrasenzeichen, von links nach rechts in der Mitte, wie im folgenden Beispiel.
Bitte beachten Sie, dass der Ausdruck die Schicht aus Biskuitkuchen ist und die Cremeschicht als Leerzeichen dargestellt wird.
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
Testfälle
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
Regeln:
- Das ist Code-Golf, also gewinnt der kürzeste Code.
- Standardlücken sind verboten.
Antworten:
Python 2,
202200 Bytes-2 Bytes dank LevitatingLion
quelle
exec
:exec~i%4*'c=zip(*c[::-1]);'
. Dies spart zwei BytesBefunge,
260250 BytesProbieren Sie es online!
Die Grundidee ist, dass wir die Spirale in der unteren Hälfte des Spielfelds aufbauen und dabei die Min- und Max-Koordinaten verfolgen. Sobald alle Eingaben verarbeitet wurden, durchlaufen wir den Koordinatenbereich und schreiben den gespeicherten Inhalt aus.
Ausführliche Erklärung
Beachten Sie, dass die Werte für dx und dy im Bereich von 0 bis 3 liegen, entsprechend den relativen Offsets -1, 0, 1, 0. Die Aktualisierung der Richtung erfolgt also durch Addition von 1, Modulo 4. Die Konvertierung in einen relativen Offset erfolgt durch Subtrahieren von 1, Modulo 2.
quelle