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 翻译