对课本进行排序
学校即将开始(如果还没有开始的话),所以是时候准备好我们的教科书了。您需要按字母顺序对书籍进行排序,但是这花了太长时间,因此您决定编写一个程序来实现。
例子
输入:
_
| | _
|F| | |
|o|_|P|
|o|B|P|
| |a|C|
| |r|G|
|_|_|_|
输出:
_
| |_
|F| |
_|o|P|
|B|o|P|
|a| |C|
|r| |G|
|_|_|_|
输入值
输入将是需要按字母顺序重新排列的一组书籍。这将只包含:|
,_
,,和
A-Za-z
。书籍的标题是从上至下垂直阅读的。
您可以选择假定输入用空格填充以适合矩形。如果选择用空格填充输入,请在答案中指定。
您的程序需要处理的最大书本高度为5,120行,而不会失败。
书籍将始终为1层,输入中的书籍将始终至少为一本书
输出量
输出结果必须是按字母顺序组织的同一套书籍。重新排列时,书的高度必须保持相同,书名与顶部的间距必须相同。
书籍应按字母顺序排序。如果您的语言具有排序功能,则可以使用该功能。否则,您可以按照此处所述使用字母排序。
书名示例
_
| |
| |
|F|
|o|
|o|
| |
| |
|B|
|a|
|r|
| |
| |
|_|
这本书的书名是:
"Foo Bar"
书名将仅包含字母和空格。
允许尾随空格
获奖
这是代码高尔夫球,因此以字节为单位的最短代码获胜。
书籍的“高度”是否有限制?
—
The_Basset_Hound 2015年
@BassetHound不,目前没有,但不必担心支持2 ^ 64-1高的书本。我最多将5120设定为“高”,这是您的程序需要处理的而不会失败
—
Downgoat 2015年
好吧,太好了
—
The_Basset_Hound 2015年
@ETHproductions是的,书名将只包含字母和空格
—
Downgoat 2015年
那本书的厚度呢?总是1列?
—
coredump