У вас есть строка $$$s$$$ и фишка, которую вы можете поставить на любой символ этой строки.
После того, как вы поставите фишку, вы можете подвинуть ее вправо несколько (возможно, ноль) раз, то есть сделать следующее действие несколько раз: если текущая позиция фишки обозначена как $$$i$$$, фишка перемещается в позицию $$$i + 1$$$. Конечно же, это действие невозможно, если фишка находится в последней позиции строки.
После того, как вы закончите двигать фишку вправо, вы можете подвинуть ее влево несколько (возможно, ноль) раз, то есть сделать следующее действие несколько раз: если текущая позиция фишки обозначена как $$$i$$$, фишка перемещается в позицию $$$i - 1$$$. Конечно же, это действие невозможно, если фишка находится в первой позиции строки.
Когда вы ставите фишку или перемещаете ее, вы выписываете символ, на котором оказалась фишка. Например, если строка $$$s$$$ — abcdef, вы ставите фишку на $$$3$$$-й символ, двигаете ее вправо $$$2$$$ раза, а затем двигаете ее влево $$$3$$$ раза, вы выпишете строку cdedcb.
Вам даны две строки $$$s$$$ и $$$t$$$. Ваше задание — определить, можно ли так выполнить описанные операции со строкой $$$s$$$, что в результате вы выпишете строку $$$t$$$.
В первой строке задано одно целое число $$$q$$$ ($$$1 \le q \le 500$$$) — количество наборов входных данных.
Каждый набор входных данных состоит из двух строк. В первой строке задана строка $$$s$$$ ($$$1 \le |s| \le 500$$$), во второй строке — строка $$$t$$$ ($$$1 \le |t| \le 2 \cdot |s| - 1$$$). Обе строки состоят из строчных букв латинского алфавита.
Гарантируется, что сумма $$$|s|$$$ по всем наборам входных данных не превосходит $$$500$$$.
Для каждого набора выходных данных выведите «YES», если можно выписать строку $$$t$$$, проводя описанные в условии действия со строкой $$$s$$$, или «NO» в противном случае.
Каждую букву можно выводить в любом регистре (YES, yes, Yes будут распознаны как положительный ответ, NO, no и nO будут распознаны как отрицательный ответ).
6 abcdef cdedcb aaa aaaaa aab baaa ab b abcdef abcdef ba baa
YES YES NO YES YES NO
Рассмотрим примеры из условия.
Первый набор входных данных разобран в условии.
Во втором наборе входных данных можно поместить фишку на $$$1$$$-ю позицию, подвинуть ее дважды вправо, а затем дважды влево.
В четвертом наборе входных данных можно поместить фишку на $$$2$$$-ю позицию, а потом не двигать ее вообще.
В пятом наборе входных данных можно поставить фишку на $$$1$$$-ю позицию, подвинуть ее $$$5$$$ раз вправо и завершить процесс.
Название |
---|