#1407. [CZOI2025 B] 生成

[CZOI2025 B] 生成

题目描述

小 Y 对现在的大模型生成技术非常感兴趣,他设计了一个非常简单的生成策略。这个生成策略是逐个字符生成的,字符集只包含小写字母。

对于一个字符串,生成的下一个字符只和当前的末尾字符有关,他会把字符串中跟当前末尾字符相同的字符挑出来,再把这些字符的下一个字符选中,在选中的字符中找到出现频率最高的字符作为当前的生成。特别的,如果有多个出现频率最高的字符,小 Y 会选择字典序最小的那个字符生成。如果末尾字符在前面没有出现过,则生成 a\tt a

举例来说,如果当前的字符串为 ababaca\tt ababaca,生成过程是这样的:此时末尾字母为 a\tt a,首先选中所有的字母 a\tt a,将所有的小写字母 a\tt a 标成红色后,字符串将是 ababaca\tt\red ab\red ab\red ac\red a,可以看到所有红色字符的下一个字符依次为 b,b,c\tt b,b,c,因为 b\tt b 出现了 22 次而 c\tt c 仅出现了 11 次,所以生成的下一个字符是 b\tt b,新字符串变为 ababacab\tt ababacab

对于一个长度为 nn 的字符串,小 Y 希望按照以上生成策略进行 nn 次生成,他希望知道生成之后的长度为 2n2n 的字符串是什么样的。

输入格式

一行一个字符串。

输出格式

一行一个字符串,长度为输入字符串的两倍。

aba
ababab
abc
abcabc
tsdaasfadgfbdbdgiojiasjid
tsdaasfadgfbdbdgiojiasjidgfasdgfasdgfasdgfasdgfasd

数据范围

本任务共有 99 个数据。

对于所有数据:1n1051\le n\le10^5, 字符集仅包含小写字母,nn 表示字符串长度。

测试点编号 特殊性质
121\sim2 1n51\le n\le 5
33 保证字符串中的所有字符完全相同
454\sim5 保证字符串中只包含 a,b\tt a,b22 种字符
696\sim9