QOJ.ac

QOJ

时间限制: 1 s 内存限制: 256 MB 总分: 100

#2374. 循环字符串?

统计

伟大的巫师给了 Alice 和 Bob 一个长度为 $2 \cdot n$ 的循环字符串,该字符串中没有长度为 $n$ 的重复子串。在循环字符串中,字符 $s_{i+1}$ 紧跟在 $s_i$ 之后。此外,$s_1$ 紧跟在 $s_{2n}$ 之后。

不幸的是,邪恶的精灵打乱了字符串中所有的符号。请帮助 Alice 和 Bob 恢复原始字符串,使其满足上述条件。

输入格式

第一行包含一个长度为 $2 \cdot n$ 的字符串 $s$ ($2 \le 2 \cdot n \le 1\,000\,000$),仅由小写拉丁字母组成。

输出格式

如果无法恢复字符串以满足条件,则在第一行输出 “NO”(不含引号)。否则,在第一行输出 “YES”(不含引号)。

在第二行输出一个字符串——即恢复后的字符串。

如果存在多个答案,输出任意一个即可。

样例

样例输入 1

cbbabcacbb

样例输出 1

YES
abbabcbccb

样例输入 2

aa

样例输出 2

NO

样例输入 3

afedbc

样例输出 3

YES
afedbc

说明

在第一个样例中,恢复后的字符串的长度为 $n=5$ 的子串为:“abbab”、“bbabc”、“babcb”、“abcbc”、“bcbcc”、“cbccb”、“bccba”、“ccbab”、“cbabb”、“babba”。

注意,第一个样例本身不包含重复子串,但它也可以被重写为另一个没有重复子串的循环字符串。因此,解是不唯一的——给出的样例也是一个正确的解。

在第二个样例中,无法恢复字符串以使其不存在重复子串。

在第三个样例中,无需进行任何更改。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.