#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指定的格式打印给定线程中的nn条帖子。


输入

输入包含一个格式如下的数据集:

nn k1k_1 M1M_1 k2k_2 M2M_2 : : knk_n MnM_n

第一行包含一个整数nn1n1,0001 \leq n \leq 1,000),表示线程中的帖子数量。然后是2n2n行。每个帖子由两行表示:第一行包含一个整数kik_ik1=0k_1 = 02in2 \leq i \leq n,对于2in2 \leq i \leq n1ki<i1 \leq k_i < i),表示第ii个帖子是对第kik_i个帖子的回帖;第二行包含一个字符串MiM_i,表示第ii个帖子的消息。其中k1k_1总是为0,这意味着第一个帖子没有回复其他帖子,也就是说它是一个开头帖。

每个消息都包含1到50个字符,由大写字母,小写字母和数字组成。

输出

按照问题陈述中的要求打印给定的nn条消息。


示例输入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

来源

Summer Camp 2013