#ATagc036e. [AGC036E] ABC String

[AGC036E] ABC String

题目描述

给定一个由 ABC 组成的字符串 SS

请你求出 SS 的一个不一定连续的子序列 xx,使得 xx 满足以下所有条件,并且在所有满足条件的子序列中长度最长。子序列指的是从 SS 中删除 00 个或多个字符后得到的字符串。

  • xx 中包含的 ABC 的数量都相等。
  • xx 中,相同的字符不会相邻出现。

输入格式

输入从标准输入读取,格式如下:

SS

输出格式

请输出满足条件的最长子序列中的一个。如果有多个答案,输出其中任意一个都视为正确。

样例 1

输入

ABBCBCAB

输出

ACBCAB

样例 2

输入

ABABABABACACACAC

输出

BABCAC

样例 3

输入

ABCABACBCBABABACBCBCBCBCBCAB

输出

ACABACABABACBCBCBCBCA

样例 4

输入

AAA

输出


说明/提示

限制

  • 1S1061 \leq |S| \leq 10^6
  • SS 仅由 ABC 组成。

样例解释 1

SS 的子序列 ACBCAB 为例,它满足所有条件,并且是最长的。ABCBCA 也是满足条件的最长子序列。ABCBCABABBCCA 等虽然是 SS 的子序列,但不满足条件。

样例解释 4

有时,唯一满足条件的子序列可能是空字符串。

由 ChatGPT 4.1 翻译