图书列表

图书列表

题目描述

Peking University Library的历史和Peking University一样长,它始建于1898年。截止到2015年,它包含大约11000千册馆藏图书,其中8000千册为纸质图书,其余为电子图书。毛泽东主席曾在1918~1919年间在该馆任职,他的工资是8大洋/月,当时顶尖教授的工资是280大洋/月。
现在小G在馆中担任与毛泽东曾经任职过的相同的职位。他的第一份工作是重新安排一些图书。他得到了一张列表,每个表项具有以下格式:
CATEGORY1/CATEGORY 2/..../CATEGORY n/BOOKNAME
这表示图书BOOKNAME位于目录CATEGORY n下, 目录CATEGORY n 位于目录CATEGORY n-1下,目录CATEGORY n-1位于目录CATEGORY n-2下, 以此类推。也就是说,每个表项是由最后的一本图书,以及该图书所属的若干目录按照层级依次组成的。我们称CATEGORY1为一级目录,而CATEGORY 2为二级目录,以此类推。例如:
MATH/GRAPH THEORY
ART/HISTORY/JAPANESE HISTORY/JAPANESE ACIENT HISTORY
ART/HISTORY/CHINESE HISTORY/THREE KINDOM/RESEARCHES ON LIUBEI
ART/HISTORY/CHINESE HISTORY/CHINESE MORDEN HISTORY
ART/HISTORY/CHINESE HISTORY/THREE KINDOM/RESEARCHES ON CAOCAO
小G认为这份列表很不容易阅读和查找,于是他决定按照以下规则制作一份新列表,用缩进来体现图书与目录之间的层级关系:
1) n级目录之前有4×(n-1)个空格的缩进。
2) 直接隶属于n级目录的图书前有4n个空格的缩进。
3) 直接隶属于目录X目录与图书按照字典序列在目录X之后,但所有目录位于所有图书之前。
4) 所有一级目录按照字典序先后列出。
例如,上面的列表转化后将变为:
ART
HISTORY
CHINESE HISTORY
THREE KINDOM
RESEARCHES ON CAOCAO
RESEARCHES ON LIUBEI
CHINESE MORDEN HISTORY
JAPANESE HISTORY
JAPANESE ACIENT HISTORY
MATH
GRAPH THEORY
请写一个程序帮助小G完成这项工作。

输入格式

输入原列表,共包含不超过30本图书,以一个数字0结尾。
每行列出一个表项,表项是一个由大写字母、数字、“/”和空格构成的字符串,长度不超过100。
一本图书可能在列表中出现多次,但在转化后的列表中,它应该只出现一次。但是若同名的图书或目录若在不同的目录结构下,则认为他们是不相同的。换句话说,一个图书或目录由以它的名字为结尾的前缀唯一确定。

输出格式

输出新列表。本试题采用逐字节比较,行末请勿输出多余空格,文末以恰好一个换行符结尾。

输入样例1

B/A
B/A
B/B
0

输出样例1

B
    A
    B

输入样例2

A1/B1/B32/B7
A1/B/B2/B4/C5
A1/B1/B2/B6/C5
A1/B1/B2/B5
A1/B1/B2
A1/B1/B2/B1
A1/B3/B2
A3/B1
A0/A1
0

输出样例2

A0
    A1
A1
    B
        B2
            B4
                C5
    B1
        B2
            B6
                C5
            B1
            B5
        B32
            B7
        B2
    B3
        B2
A3
    B1

数据规模与约定

对于20%的数据,只有一级目录。
对于另外20%的数据,没有同名的图书或目录。
对于另外20%的数据,每本图书仅出现一次。
对于100%的数据,参见输入格式中给出的数据范围,没有其它特殊约定。