Aufgrund technischer Einschränkungen von Stack Exchange wird der Titel falsch gerendert. Der richtige Titel für diese Herausforderung ist
Mach ein
Word Icicle!
Word Icicle
Word cicle
ord cicle
ord icle
ord i le
or i le
or i l
or l
or
r
Die heutige Herausforderung besteht darin, aus dem Eingangswort Eiszapfen zu machen. Führen Sie die folgenden Schritte aus, wenn Sie eine Zeichenfolge mit vollständig druckbarem ASCII-Code und mindestens 2 Zeichen ohne Leerzeichen angeben:
Gibt den aktuellen Status der Zeichenfolge aus.
Ersetzen Sie das lexikalisch kleinste Zeichen (außer Leerzeichen) durch ein Leerzeichen. Wenn es einen Gleichstand gibt, ersetzen Sie das Zeichen ganz links.
Wiederholen Sie dies in aufeinanderfolgenden Zeilen, bis die Zeichenfolge nur noch 1 Zeichen ohne Leerzeichen enthält.
Dies erzeugt den Effekt, dass die Eingabezeichenfolge so aussieht, als würde sie schmelzen ...
I'm Melting!!!
I'm Melting !!
I'm Melting !
I'm Melting
I m Melting
m Melting
m elting
m lting
m ltin
m lt n
m t n
t n
t
Regeln
Nach einigen Iterationen wird Ihre Ausgabe mit ziemlicher Sicherheit nachgestellte Leerzeichen in jeder Zeile enthalten. Wenn Sie diese abschneiden möchten, ist dies zulässig.
Möglicherweise wird eine Leerzeile nachgestellt, jedoch nicht mehr.
Denken Sie daran, dass die Eingabe möglicherweise mehrere Leerzeichen enthält, diese werden jedoch alle effektiv übersprungen. Zum Beispiel sollte die Eingabe
a a
gebena a a
Sie können Eingaben als Liste von Zeichenfolgen verwenden, wenn Sie möchten. Für die Ausgabe können Sie eine Liste von Zeichenfolgen, eine einzelne Zeichenfolge mit Zeilenumbrüchen oder eine Zeichenmatrix / ein 2D-Array zurückgeben oder drucken. Im Allgemeinen bevorzuge ich zulässige E / A-Formate, sodass andere Formate höchstwahrscheinlich zulässig sind, solange sie konsistent sind und eindeutig der richtigen Ausgabe entsprechen. Im Zweifelsfall können Sie gerne nachfragen. Wie üblich sind vollständige Programme oder Funktionen zulässig.
Denken Sie daran, dies ist ein Wettbewerb, um die kürzeste Antwort in jeder Sprache zu geben! Wenn Sie in Java antworten möchten, versuchen Sie, die kürzeste Java-Antwort (in Byte) zu erstellen, die Sie können.
Testfälle
Hello World! -->
Hello World!
Hello World
ello World
ello orld
ello orl
llo orl
lo orl
o orl
o or
or
r
AbCdEfGhIjKlMnOpQrStUvWxYz -->
AbCdEfGhIjKlMnOpQrStUvWxYz
bCdEfGhIjKlMnOpQrStUvWxYz
b dEfGhIjKlMnOpQrStUvWxYz
b d fGhIjKlMnOpQrStUvWxYz
b d f hIjKlMnOpQrStUvWxYz
b d f h jKlMnOpQrStUvWxYz
b d f h j lMnOpQrStUvWxYz
b d f h j l nOpQrStUvWxYz
b d f h j l n pQrStUvWxYz
b d f h j l n p rStUvWxYz
b d f h j l n p r tUvWxYz
b d f h j l n p r t vWxYz
b d f h j l n p r t v xYz
b d f h j l n p r t v x z
d f h j l n p r t v x z
f h j l n p r t v x z
h j l n p r t v x z
j l n p r t v x z
l n p r t v x z
n p r t v x z
p r t v x z
r t v x z
t v x z
v x z
x z
z
PPCG is da BEST -->
PPCG is da BEST
PPCG is da EST
PP G is da EST
PP G is da ST
PP is da ST
P is da ST
is da ST
is da T
is da
is d
is
s
({({})({}[()])}{}) -->
({({})({}[()])}{})
{({})({}[()])}{})
{ {})({}[()])}{})
{ {}) {}[()])}{})
{ {}) {}[ )])}{})
{ {} {}[ )])}{})
{ {} {}[ ])}{})
{ {} {}[ ] }{})
{ {} {}[ ] }{}
{ {} {} ] }{}
{ {} {} }{}
{} {} }{}
} {} }{}
} } }{}
} } } }
} } }
} }
}