Nous n'avons pas assez de défis (semi) faciles pour les débutants. De plus en plus de faciles sont déjà prises. J'ai donc essayé de trouver quelque chose qui pourrait être réalisable par les débutants, mais ce n'est pas un doublon.
Contribution:
Une seule chaîne séparée par votre nouvelle ligne de système d'exploitation (c.-à-d. \r\n
),
Ou un tableau avec plusieurs chaînes.
Sortie - Les escaliers :
Supprimez tous les symboles non alphabétiques et non numériques. Donc, tout ce qui reste est [A-Za-z0-9]
. Et puis «construire un escalier»; les commander essentiellement sur la longueur avec le plus petit en haut et le plus large en bas.
Règles du défi:
- Lorsque deux chaînes sont de longueur égale, nous les fusionnons en une seule grande chaîne (l'ordre n'a pas d'importance, il peut donc être du premier au dernier ou du dernier au premier, selon celui des deux que vous préférez).
- La règle ci-dessus peut s'empiler lorsque les chaînes fusionnées sont à nouveau de même longueur (voir cas de test 2).
Règles générales:
- L'entrée est STDIN et ne contient que des caractères ASCII. Et la sortie est STDOUT.
- Le cas de la sortie doit être le même que l'entrée.
Chaque soumission doit être un programme complet capable de compiler et d'exécuter, donc pas seulement une méthode / fonction.EDIT: Je suis plutôt nouveau, alors peut-être est-il préférable d'utiliser la valeur par défaut à partir de maintenant, même si je préfère moi-même un programme complet. Désolé pour tous ceux qui ont déjà publié un programme complet. N'hésitez pas à modifier, et je vais essayer de ne pas changer le post mi-défi la prochaine fois.- Il s'agit de code-golf , donc la réponse la plus courte en octets l'emporte. J'accepte probablement la réponse la plus courte dans un an.
Ne laissez pas les réponses de code-golf vous décourager de publier des langages de golf non-codegolf comme C # et similaires! Essayez de trouver la réponse la plus courte pour n'importe quel langage de programmation. - N'hésitez pas à utiliser des langues plus récentes que cette question.
Cas de test:
Entrée 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
Sortie 1:
Okthatwilldo
Thisisasampletext
Blablablasomemoretext
Thewoodmaybeofexcellentquality
thatyouwillhavetousetobuildstairs
orprettycrappyalmostfallingapartandfilledwithtermites
Entrée 2:
A
small
one
that
contains
equal
length
strings
for
the
special
rule
Sortie 2:
A Or alternatively: A
length length
oneforthe theforone
smallequal equalsmall
stringsspecial specialstrings
thatrulecontains containsrulethat
Étapes expliquées sur 2:
Première commande sur la longueur:
A
one
for
the
that
rule
small
equal
length
strings
special
contains
Première fusion:
A
oneforthe
thatrule
smallequal
length
stringsspecial
contains
Deuxième ordre sur la longueur:
A
length
thatrule
contains
oneforthe
smallequal
stringsspecial
Deuxième fusion:
A
length
thatrulecontains
oneforthe
smallequal
stringsspecial
Troisième ordre de longueur:
A
length
oneforthe
smallequal
stringsspecial
thatrulecontains
Entrée 3:
Test,
test.
This
is
a
test.
Sortie 3:
a Or alternatively: a
is is
TesttestThistest testThistestTest
Entrée 4:
a
bc
d!
123
Sortie 4:
123 Or alternatively: 123
adbc dabc
contains
n'est pas censé être dans la sortie 2. Il est fusionné avecthatrule