问题 5314 --字符串题

5314: 字符串题

题目描述

一个串 $T$ 是 $S$ 的循环节,当且仅当存在正整数 $k$,使得 $S$ 是 $T$ 重复 $k$ 次形成的字符串的前缀,比如 `abcd` 是 `abcdabcdab` 的循环节。 已知 $T$ 是一个长度为 $n$ 的仅由小写字符构成的字符串,$S$ 的长度为 $i$ 的前缀的最短循环节的长度 $pre_i$。 告诉你 $n$ 以及 $pre_1,pre_2,pre_3,\cdots, pre_n$,请找到一个长度为 $n$ 的小写字符串 $S$ ,使得 $S$ 能对应上$pre$ 数组。

输入

第一行包含一个正整数 $n$,表示字符串的长度。 第二行包含 $n$ 个正整数 $pre_1,pre_2,pre_3,\cdots, pre_n$,表示每个前缀的最短循环节长度。 输入数据保证至少存在一组可行解。

输出

输出一行一个长度为 $n$ 的小写字符串 $S$ ,即某个满足条件的 $S$ 。 若有多个可行的 $S$ ,输出字典序最小的那一个。

样例输入输出

输入#1 复制
5
1 2 2 2 5
输出#1 复制
ababb

提示

对于 $100\%$ 的数据,满足$n \leq 100000, 1 \leq pre_i \leq i$。
序号 标题 作者 发表时间 费用 订购数 操作