Codeforces Round 776 (Div. 3) |
---|
Закончено |
Задана строка $$$s$$$, длина строки — нечётное число. Строка состоит из строчных букв латинского алфавита.
Пока длина строки строго больше $$$1$$$, над ней можно производить следующую операцию: выбрать любые две соседние в строке $$$s$$$ буквы и удалить их из строки. Например, из строки «lemma» за одну операцию можно получить любую из четырёх строк: «mma», «lma», «lea» или «lem». В частности, за одну операцию длина строки уменьшается на $$$2$$$.
Формально, пусть строка $$$s$$$ имеет вид $$$s=s_1s_2 \dots s_n$$$ ($$$n>1$$$). Во время одного хода вы выбираете произвольный индекс $$$i$$$ ($$$1 \le i < n$$$) и делаете замену $$$s=s_1s_2 \dots s_{i-1}s_{i+2} \dots s_n$$$.
Для заданных строки $$$s$$$ и буквы $$$c$$$ определите, можно ли совершить такую последовательность ходов, что в итоге будет верно равенство $$$s=c$$$? Иными словами, существует ли такая последовательность действий, что процесс завершится строкой длины $$$1$$$, которая состоит из буквы $$$c$$$?
В первой строке входных данных записано целое число $$$t$$$ ($$$1 \le t \le 10^3$$$) — количество наборов входных данных в тесте.
Далее следуют описания $$$t$$$ наборов. Каждый набор данных представлен двумя строками:
Для каждого набора входных данных в отдельной строке выведите:
Вы можете выводить YES и NO в любом регистре (например, строки yEs, yes, Yes и YES будут распознаны как положительный ответ).
5 abcde c abcde b x y aaaaaaaaaaaaaaa a contest t
YES NO NO YES YES
В первом наборе входных данных примера $$$s$$$=«abcde». Требуется получить $$$s$$$=«c». За первый ход удалим первые две буквы, получим $$$s$$$=«cde». За второй ход удалим последние две буквы, получим ожидаемое значение $$$s$$$=«c».
В третьем наборе входных данных примера $$$s$$$=«x», требуется получить $$$s$$$=«y». Очевидно, что это невозможно сделать.
Название |
---|