#icpc2013summerday4a. [icpc2013summer_day4_a]Thread Tree
[icpc2013summer_day4_a]Thread Tree
问题陈述
Nathan O. Davis运营着一个名为JAG-channel的电子公告板系统。现在他在添加新功能时遇到了困难 --- 线程视图。
和其他许多公告板系统一样,JAG-channel是基于线程的。这里的线程(也称为主题)指的是一系列帖子的单个对话。每个帖子可以是开头帖,它会启动一个新的线程,或者是回复现有线程中先前帖子的回帖。
线程视图是一种树形视图,反映了帖子之间的逻辑回复结构:每个帖子形成树中的一个节点,并将其回复作为其子节点按照时间顺序(即旧的回复在新的回复之前)展示出来。请注意,帖子及其直接和间接回复形成一个整体的子树。
让我们举个例子。假设:一个用户发表了一条消息为hoge
的开头帖; 另一个用户用fuga
回复了它; 还有另一个用户用piyo
回复了开头的帖子; 又有其他人用foobar
回复了第二个帖子(即fuga
),还有第五个用户用jagjag
回复了相同的帖子。这个帖子的树形结构如下:
hoge
├─fuga
│ ├─foobar
│ └─jagjag
└─piyo
为了更容易实现,Nathan考虑使用一种更简单的格式:每个帖子距离开头帖的层数由点来表示。每个回复的层数比其父帖子多一个点。上述线程的树形结构将如下所示:
hoge
.fuga
..foobar
..jagjag
.piyo
您在这个问题中的任务是帮助Nathan编写一个程序,以Nathan指定的格式打印给定线程中的条帖子。
输入
输入包含一个格式如下的数据集:
: :
第一行包含一个整数(),表示线程中的帖子数量。然后是行。每个帖子由两行表示:第一行包含一个整数(,,对于有),表示第个帖子是对第个帖子的回帖;第二行包含一个字符串,表示第个帖子的消息。其中总是为0,这意味着第一个帖子没有回复其他帖子,也就是说它是一个开头帖。
每个消息都包含1到50个字符,由大写字母,小写字母和数字组成。
输出
按照问题陈述中的要求打印给定的条消息。
示例输入1
1
0
icpc
示例输入1对应的输出
icpc
示例输入2
5
0
hoge
1
fuga
1
piyo
2
foobar
2
jagjag
示例输入2对应的输出
hoge
.fuga
..foobar
..jagjag
.piyo
示例输入3
8
0
jagjag
1
hogehoge
1
buhihi
2
fugafuga
4
ponyoponyo
5
evaeva
4
nowawa
5
pokemon
示例输入3对应的输出
jagjag
.hogehoge
..fugafuga
...ponyoponyo
....evaeva
....pokemon
...nowawa
.buhihi
示例输入4
6
0
nakachan
1
fan
2
yamemasu
3
nennryou2
4
dannyaku4
5
kouzai11
示例输入4对应的输出
nakachan
.fan
..yamemasu
...nennryou2
....dannyaku4
.....kouzai11
示例输入5
34
0
LoveLive
1
honoka
2
borarara
2
sunohare
2
mogyu
1
eri
6
kasikoi
7
kawaii
8
eriichika
1
kotori
10
WR
10
haetekurukotori
10
ichigo
1
umi
14
love
15
arrow
16
shoot
1
rin
18
nyanyanya
1
maki
20
6th
20
star
22
nishikino
1
nozomi
24
spiritual
25
power
1
hanayo
27
darekatasukete
28
chottomattete
1
niko
30
natsuiro
30
nikkonikkoni
30
sekaino
33
YAZAWA
示例输入5对应的输出
LoveLive
.honoka
..borarara
..sunohare
..mogyu
.eri
..kasikoi
...kawaii
....eriichika
.kotori
..WR
..haetekurukotori
..ichigo
.umi
..love
...arrow
....shoot
.rin
..nyanyanya
.maki
..6th
..star
...nishikino
.nozomi
..spiritual
...power
.hanayo
..darekatasukete
...chottomattete
.niko
..natsuiro
..nikkonikkoni
..sekaino
...YAZAWA
示例输入6
6
0
2ch
1
1ostu
1
2get
1
1otsu
1
1ostu
3
pgr
示例输入6对应的输出
2ch
.1ostu
.2get
..pgr
.1otsu
.1ostu