#ABC312Ex. snukesnuke

snukesnuke

snukesnuke

题目描述

高桥君要为人 1,,N1,\ldots,NNN 个人决定昵称。

ii 个人想要的昵称是 SiS_i。为了避免给多个人相同的昵称,他按以下方式决定昵称:

对于 i=1,,Ni=1,\ldots,N,按顺序如下决定第 ii 个人的昵称:

  • 将变量 kik_i 初始化为 11
  • 只要 SiS_i 重复 kik_i 次得到的字符串是某个人的昵称,就不断将 kik_i11
  • 将第 ii 个人的昵称设为 SiS_i 重复 kik_i 次得到的字符串。

求为这 NN 个人决定昵称后,k1,,kNk_1,\ldots,k_N 的值。

输入格式

输入按以下格式从标准输入给出:

NN
S1S_1
\vdots
SNS_N

输出格式

输出一行,包含按顺序排列的 k1,,kNk_1,\ldots,k_N,用空格分隔。

样例

3
snuke
snuke
rng
1 2 1

首先决定第 11 个人的昵称。

k1=1k_1 = 1

S1S_1 重复 k1k_1 次得到的字符串是 snuke,还不是任何人的昵称,所以第 11 个人的昵称定为 snuke。

接着决定第 22 个人的昵称。

k2=1k_2 = 1

S2S_2 重复 k2k_2 次得到的字符串是 snuke,已经是第 11 个人的昵称,所以将 k2k_211,变为 22

S2S_2 重复 22 次得到的字符串是 snukesnuke,还不是任何人的昵称,所以第 22 个人的昵称定为 snukesnuke。

最后决定第 33 个人的昵称。

k3=1k_3 = 1

S3S_3 重复 k3k_3 次得到的字符串是 rng,还不是任何人的昵称,所以第 33 个人的昵称定为 rng。

因此,k1k_1k2k_2k3k_3 分别变为 112211

4
aa
a
a
aaa
1 1 3 2

11 个人的昵称定为 aa。

22 个人的昵称定为 a。

33 个人的昵称定为 aaa,因为 a 和 aa 已经是别人的昵称。

44 个人的昵称定为 aaaaaa,因为 aaa 已经是别人的昵称。

5
x
x
x
x
x
1 2 3 4 5

数据范围

  • N1N \ge 1
  • SiS_i 是由小写英文字母组成的长度至少为 11 的字符串。
  • SiS_i 的长度之和至多为 2×1052\times 10^5
难度 NOI/NOI+/CTS
通过率
尝试 0
已通过 0
ID
3018
类型
传统题
Time Limit
1774ms
Memory Limit
1024MiB
上传者
标签