Назовем строку хорошей, если ее длина не менее \(2\) и все её символы равны \(\texttt{A}\), кроме последнего символа, который равен \(\texttt{B}\). Таким образом, хорошими строками являются \(\texttt{AB},\texttt{AAB},\texttt{AAAB},\ldots\). Обратите внимание, что \(\texttt{B}\) — это не хорошая строка.
Вам дана изначально пустая строка \(s_1\).
Вы можете выполнить следующую операцию любое количество раз:
- Выберите любую позицию \(s_1\) и вставьте в эту позицию хорошую строку.
Вам дана строка \(s_2\). Можно ли после некоторого количества операций превратить \(s_1\) в \(s_2\)?
Выходные данные
Для каждого набора входных данных выведите «YES» (без кавычек), если мы можем превратить \(s_1\) в \(s_2\) после некоторого количества операций, и «NO» (без кавычек) в противном случае.
Вы можете выводить «YES» и «NO» в любом регистре (например, строки «yEs», «yes» и «Yes» будут засчитаны как положительный ответ).
Примечание
В первом наборе входных данных мы можем преобразовать \(s_1\) следующим образом: \(\varnothing \to \color{red}{\texttt{AAB}} \to \texttt{A}\color{red}{\texttt{AB}}\texttt{AB}\).
В третьем наборе входных данных мы можем преобразовать \(s_1\) следующим образом: \(\varnothing \to \color{red}{\texttt{AAAAAAAAB}}\).
Во втором и четвертом наборах входных данных можно показать, что невозможно превратить \(s_1\) в \(s_2\).
Примеры
| № | Входные данные | Выходные данные |
|
1
|
4 AABAB ABB AAAAAAAAB A
|
YES
NO
YES
NO
|