小 Y 对现在的大模型生成技术非常感兴趣,他设计了一个非常简单的生成策略。这个生成策略是逐个字符生成的,字符集只包含小写字母。
对于一个字符串,生成的下一个字符只和当前的末尾字符有关,他会把字符串中跟当前末尾字符相同的字符挑出来,再把这些字符的下一个字符选中,在选中的字符中找到出现频率最高的字符作为当前的生成。特别的,如果有多个出现频率最高的字符,小 Y 会选择字典序最小的那个字符生成。如果末尾字符在前面没有出现过,则生成 a。
举例来说,如果当前的字符串为 ababaca,生成过程是这样的:此时末尾字母为 a,首先选中所有的字母 a,将小写字母 a 标成红色后字符串将是 ababaca,可以看到所有红色字符的下一个字符为依次 b、b、c,因为 b 出现了 2 次而 c 仅出现了 1 次,所以生成的下一个字符是 b,新字符串变为 ababacab。
对于一个长度为 n 的字符串,小 Y 希望按照以上生成策略进行 n 次生成,他希望知道生成之后的长度为 2n 的字符串是什么样的。
一行一个字符串。
一行一个字符串,长度为输入字符串的两倍。
aba
ababab
abc
abcabc
tsdaasfadgfbdbdgiojiasjid
tsdaasfadgfbdbdgiojiasjidgfasadgfasdgfasdgfasd
本题共有 9 个测试点,每个测试点 10 分。
对于所有测试点:1 \le n \le 100000,字符集仅包含小写字母,n 表示字符串长度。
对于测试点 1-2 :1 \le n \le 5。
对于测试点 3 :保证字符串中的所有字符完全相同。
对于测试点 4-5:保证字符串中只包含 a,b 这 2 种字符。
2025年常州“信息与未来”小学生编程比赛