Wir haben nicht genug (halb-) leichte Herausforderungen für Anfänger. Immer mehr der einfachen sind bereits vergeben. Also habe ich versucht, etwas zu finden, das für Anfänger erreichbar sein könnte, aber das ist kein Duplikat.
Eingang:
Eine einzelne Zeichenfolge, die durch eine neue Zeile des Betriebssystems (dh \r\n
) getrennt ist,
oder ein Array mit mehreren Zeichenfolgen.
Ausgabe - Die Treppe :
Entfernen Sie alle nicht alphabetischen und nicht numerischen Symbole. Also bleibt nur noch [A-Za-z0-9]
. Und dann 'eine Treppe bauen'; im grunde nach länge ordnen mit dem kleinsten oben und dem breitesten unten.
Herausforderungsregeln:
- Wenn zwei Zeichenfolgen gleich lang sind, werden sie als eine große Zeichenfolge zusammengeführt (die Reihenfolge spielt keine Rolle, es kann also vom ersten bis zum letzten oder vom letzten bis zum ersten sein, je nachdem, welche der beiden Sie bevorzugen).
- Die obige Regel kann gestapelt werden, wenn die zusammengeführten Zeichenfolgen wieder die gleiche Länge haben (siehe Testfall 2).
Allgemeine Regeln:
- Die Eingabe ist STDIN und enthält nur ASCII-Zeichen. Und die Ausgabe ist STDOUT.
- Der Fall des Ausgangs muss mit dem des Eingangs identisch sein.
Jede Einreichung muss ein vollständiges Programm sein, das kompiliert und ausgeführt werden kann, also nicht nur eine Methode / Funktion.EDIT: Ich bin ziemlich neu, also ist es vielleicht besser, von nun an die Standardeinstellung zu verwenden, obwohl ich selbst ein volles Programm bevorzuge. Entschuldigung für alle, die bereits ein vollständiges Programm veröffentlicht haben. Fühlen Sie sich frei zu bearbeiten, und ich werde versuchen, die Post-Mid-Challenge beim nächsten Mal nicht zu ändern.- Das ist Code-Golf , also gewinnt die kürzeste Antwort in Bytes. Ich akzeptiere wahrscheinlich die kürzeste Antwort in einem Jahr.
Lassen Sie sich von Code-Golf-Antworten nicht davon abhalten, Golf-Nicht-Codegolf-Sprachen wie C # und dergleichen zu veröffentlichen! Versuchen Sie, für jede Programmiersprache die kürzeste Antwort zu finden. - Fühlen Sie sich frei, neuere Sprachen als diese Frage zu verwenden.
Testfälle:
Eingang 1:
This is a sample text,
that you will have to use to build stairs.
The wood may be of excellent quality,
or pretty crappy almost falling apart and filled with termites.
Bla bla bla - some more text
Ok, that will do
Ausgang 1:
Okthatwilldo
Thisisasampletext
Blablablasomemoretext
Thewoodmaybeofexcellentquality
thatyouwillhavetousetobuildstairs
orprettycrappyalmostfallingapartandfilledwithtermites
Eingang 2:
A
small
one
that
contains
equal
length
strings
for
the
special
rule
Ausgang 2:
A Or alternatively: A
length length
oneforthe theforone
smallequal equalsmall
stringsspecial specialstrings
thatrulecontains containsrulethat
Schritte erklärt von 2:
Erstbestellung nach Länge:
A
one
for
the
that
rule
small
equal
length
strings
special
contains
Erste Zusammenführung:
A
oneforthe
thatrule
smallequal
length
stringsspecial
contains
Zweite Ordnung nach Länge:
A
length
thatrule
contains
oneforthe
smallequal
stringsspecial
Zweite Zusammenführung:
A
length
thatrulecontains
oneforthe
smallequal
stringsspecial
Dritte Bestellung nach Länge:
A
length
oneforthe
smallequal
stringsspecial
thatrulecontains
Eingang 3:
Test,
test.
This
is
a
test.
Ausgang 3:
a Or alternatively: a
is is
TesttestThistest testThistestTest
Eingang 4:
a
bc
d!
123
Ausgang 4:
123 Or alternatively: 123
adbc dabc
contains
soll nicht in Ausgabe 2 sein. Es wird zusammengeführt mitthatrule