Codeforces Global Round 20 |
---|
Закончено |
Назовем строку хорошей, если ее длина не менее $$$2$$$ и все её символы равны $$$\texttt{A}$$$, кроме последнего символа, который равен $$$\texttt{B}$$$. Таким образом, хорошими строками являются $$$\texttt{AB},\texttt{AAB},\texttt{AAAB},\ldots$$$. Обратите внимание, что $$$\texttt{B}$$$ — это не хорошая строка.
Вам дана изначально пустая строка $$$s_1$$$.
Вы можете выполнить следующую операцию любое количество раз:
Вам дана строка $$$s_2$$$. Можно ли после некоторого количества операций превратить $$$s_1$$$ в $$$s_2$$$?
Каждый тест содержит несколько наборов входных данных. Первая строка содержит одно целое число $$$t$$$ ($$$1 \leq t \leq 10^4$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.
Первая строка каждого набора входных данных содержит единственную строку $$$s_2$$$ ($$$1 \leq |s_2| \leq 2 \cdot 10^5$$$).
Гарантируется, что $$$s_2$$$ состоит только из символов $$$\texttt{A}$$$ и $$$\texttt{B}$$$.
Гарантируется, что сумма $$$|s_2|$$$ по всем наборам входных данных не превышает $$$2 \cdot 10^5$$$.
Для каждого набора входных данных выведите «YES» (без кавычек), если мы можем превратить $$$s_1$$$ в $$$s_2$$$ после некоторого количества операций, и «NO» (без кавычек) в противном случае.
Вы можете выводить «YES» и «NO» в любом регистре (например, строки «yEs», «yes» и «Yes» будут засчитаны как положительный ответ).
4AABABABBAAAAAAAABA
YES NO YES NO
В первом наборе входных данных мы можем преобразовать $$$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$$$.
Название |
---|