Trier les manuels
L'école commence bientôt (si ce n'est pas déjà fait) et il est donc temps de mettre de l'ordre dans nos manuels. Vous devez trier vos livres par ordre alphabétique mais cela prend trop de temps, vous décidez donc d'écrire un programme pour le faire.
Exemples
Contribution:
_
| | _
|F| | |
|o|_|P|
|o|B|P|
| |a|C|
| |r|G|
|_|_|_|
Sortie:
_
| |_
|F| |
_|o|P|
|B|o|P|
|a| |C|
|r| |G|
|_|_|_|
Contribution
L'entrée sera un ensemble de livres qui doivent être réorganisés par ordre alphabétique. Il contiendra seulement: |
, _
, et
A-Za-z
. Les titres des livres sont lus verticalement, de haut en bas.
Vous pouvez choisir de supposer que l'entrée est remplie d'espaces pour s'adapter à un rectangle. Si vous choisissez de compléter votre entrée avec des espaces, veuillez le préciser dans votre réponse.
La hauteur de livre très maximale que votre programme devra gérer est de 5 120 lignes sans échouer.
Les livres seront toujours d'une épaisseur et leur sera toujours au moins un livre en entrée
Sortie
La sortie devra être le même ensemble de livres organisés par ordre alphabétique. La hauteur des livres doit rester la même et le titre doit avoir le même espacement du haut lorsqu'il est réorganisé.
Les livres doivent être classés par ordre alphabétique. Si votre langue possède une fonction de tri, vous pouvez l'utiliser. Sinon, vous pouvez utiliser le tri alphabétique comme décrit ici .
Exemples de titres de livres
_
| |
| |
|F|
|o|
|o|
| |
| |
|B|
|a|
|r|
| |
| |
|_|
Le titre de ce livre est:
"Foo Bar"
Les titres des livres ne contiendront que des lettres et des espaces.
Les espaces de fin sont autorisés
Gagnant
C'est le code-golf donc le code le plus court en octets gagne.