CF1672B I love AAAB
题目描述
我们称一个字符串为“好字符串”,如果它的长度至少为 $2$,且除了最后一个字符是 $\texttt{B}$ 以外,其余所有字符都是 $\texttt{A}$。好字符串的例子有 $\texttt{AB}$、$\texttt{AAB}$、$\texttt{AAAB}$,依此类推。注意,$\texttt{B}$ 不是好字符串。
你有一个初始为空的字符串 $s_1$。
你可以进行如下操作任意次:
- 在 $s_1$ 的任意位置插入一个好字符串。
给定一个字符串 $s_2$,你能否通过若干次操作将 $s_1$ 变为 $s_2$?
输入格式
每组测试包含多个测试用例。第一行包含一个整数 $t$($1 \leq t \leq 10^4$),表示测试用例的数量。接下来是每个测试用例的描述。
每个测试用例的第一行包含一个字符串 $s_2$($1 \leq |s_2| \leq 2 \times 10^5$)。
保证 $s_2$ 只包含字符 $\texttt{A}$ 和 $\texttt{B}$。
保证所有测试用例中 $|s_2|$ 的总和不超过 $2 \times 10^5$。
输出格式
对于每个测试用例,如果可以通过若干次操作将 $s_1$ 变为 $s_2$,输出 "YES"(不含引号);否则输出 "NO"(不含引号)。
你可以用任意大小写输出 "YES" 和 "NO"(例如 "yEs"、"yes"、"Yes" 都会被识别为肯定回答)。
说明/提示
在第一个测试用例中,变换过程如下:$\varnothing \to \color{red}{\texttt{AAB}} \to \texttt{A}\color{red}{\texttt{AB}}\texttt{AB}$。
在第三个测试用例中,变换过程如下:$\varnothing \to \color{red}{\texttt{AAAAAAAAB}}$。
在第二个和第四个测试用例中,可以证明无法将 $s_1$ 变为 $s_2$。
由 ChatGPT 4.1 翻译