Herausforderung
Geben Sie bei einer Zeichenfolgeeingabe die abgerissene Version aus.
Der Prozess
P
r Pr r
o o o
g g g
r r r rogr r
a -> a -> a -> a -> a -> -> -> -> ->
m m m m m
m m m m m mmar m
i i i i i i i mi m
n n n n gn gn gn gn gni mgni
g g Pg Pg roPg roPg roPgmar roPgmar roPgmar roPgmar
- Legen Sie die Zeichenfolge vertikal.
- Wählen Sie eine zufällige Ganzzahl zwischen
1
und(height of the column of characters) - 1
und eine zufällige Richtung (links oder rechts). - Drehen Sie diese Anzahl von Zeichen in diese Richtung (wenn diese Leerzeichen nicht belegt sind, fahren Sie mit Schritt 4 fort; andernfalls fahren Sie mit Schritt 2 fort).
- Lassen Sie diese Charaktere aufgrund der Schwerkraft fallen.
- Wiederholen, bis die Höhe der Zeichenspalte höchstens
1
größer ist als die Höhe der Spalten daneben (dh es wird unmöglich, die Spalte weiter abzureißen ("Schritte 2-4")). - Wenn es eine andere Zeichenspalte gibt, deren
1
Zeichen größer als eine oder mehrere der umgebenden Spalten ist (dh abreißbar), reißen Sie diese Spalte so oft ab, bis sie nicht mehr abreißbar ist. Wenn es mehrere zerstörbare Spalten gibt, zerstören Sie die höchste Spalte vollständig (wenn es mehrere höchste Spalten gibt, zerstören Sie die am weitesten links stehende Spalte vollständig). - Wiederholen, bis alle Spalten nicht mehr abreißbar sind.
Wenn die Eingabe Leerzeichen enthält, zerstören Sie diese zuerst auf einmal.
C
o
d
e -> oC -> -> ...
de
G G G
o o o
l l l
f f defoC
Regeln
- Standardlücken sind verboten.
- Nachgestellte und führende Zeilen sind erlaubt.
- Ihr Programm kann entweder eine Zeichenfolge oder eine Entsprechung ausgeben oder ausgeben.
- Die Ausgabe darf nicht deterministisch sein (es sei denn, die Eingabe kann nicht zerstört werden).
Das ist Code-Golf , also gewinnen die Einsendungen mit der geringsten Anzahl von Bytes in ihren Sprachen!
4
würde die Ausgabe deterministisch machen, dh nicht "zufällig". Bearbeitet die Regeln, um das explizit zu machen.