AT_abc337_b [ABC337B] Extended ABC

题目描述

扩展 A 字符串、扩展 B 字符串、扩展 C 字符串以及扩展 ABC 字符串定义如下: - 若字符串 $S$ 的所有字符都是 `A`,则称 $S$ 为扩展 A 字符串。 - 若字符串 $S$ 的所有字符都是 `B`,则称 $S$ 为扩展 B 字符串。 - 若字符串 $S$ 的所有字符都是 `C`,则称 $S$ 为扩展 C 字符串。 - 若存在扩展 A 字符串 $S_A$、扩展 B 字符串 $S_B$、扩展 C 字符串 $S_C$,使得将 $S_A$、$S_B$、$S_C$ 按此顺序连接后得到的字符串等于 $S$,则称 $S$ 为扩展 ABC 字符串。 例如,`ABC`、`A`、`AAABBBCCCCCCC` 都是扩展 ABC 字符串,而 `ABBAAAC`、`BBBCCCCCCCAAA` 不是扩展 ABC 字符串。需要注意的是,空字符串既是扩展 A 字符串,也是扩展 B 字符串和扩展 C 字符串。 给定一个仅由 `A`、`B`、`C` 组成的字符串 $S$。如果 $S$ 是扩展 ABC 字符串,则输出 `Yes`,否则输出 `No`。

输入格式

输入为以下格式,从标准输入读取。 > $S$

输出格式

如果 $S$ 是扩展 ABC 字符串,则输出 `Yes`,否则输出 `No`。

说明/提示

## 限制条件 - $S$ 仅由 `A`、`B`、`C` 组成。 - $1 \leq |S| \leq 100$($|S|$ 表示字符串 $S$ 的长度)。 ## 样例解释 1 `AAABBBCCCCCCC` 可以分为长度为 $3$ 的扩展 A 字符串 `AAA`,长度为 $3$ 的扩展 B 字符串 `BBB`,长度为 $7$ 的扩展 C 字符串 `CCCCCCC`,按顺序连接后得到原字符串,因此是扩展 ABC 字符串。所以输出 `Yes`。 ## 样例解释 2 无论如何选择扩展 A 字符串 $S_A$、扩展 B 字符串 $S_B$、扩展 C 字符串 $S_C$,都无法使 $S_A$、$S_B$、$S_C$ 按顺序连接后等于 `ACABABCBC`。因此输出 `No`。 由 ChatGPT 4.1 翻译