#LQ1003. 修改数组

修改数组

题目描述

给定一个长度为 NN 的数组 A=[A1,A2,,AN]A=[A_1,A_2,⋅⋅⋅,A_N],数组中有可能有重复出现的整数。

现在小明要按以下方法将其修改为没有重复整数的数组。小明会依次修改 A2,A3,,ANA_2,A_3,⋅⋅⋅,A_N

当修改 AiA_i 时,小明会检查 AiA_i 是否在 A1Ai1A_1 ∼ A_{i−1} 中出现过。如果出现过,则小明会给 AiA_i 加上 1 ;如果新的 AiA_i 仍在之前出现过,小明会持续给 AiA_i 加 1 ,直到 AiA_i 没有在 A1Ai1A_1 ∼ A_{i−1} 中出现过。

ANA_N 也经过上述修改之后,显然 AA 数组中就没有重复的整数了。

现在给定初始的 AA 数组,请你计算出最终的 AA 数组。

输入描述

第一行包含一个整数 NN

第二行包含 NN 个整数 A1,A2,,ANA_1,A_2,⋅⋅⋅,A_N

输出描述

输出 NN 个整数,依次是最终的 A1,A2,,ANA_1,A_2,⋅⋅⋅,A_N

5
2 1 1 3 4
2 1 3 4 5

评测用例规模与约定:

对于 80%80\% 的评测用例,1N100001≤N≤10000

对于所有评测用例,1N1000001Ai10000001≤N≤100000,1≤A_i≤1000000