Олимпиадный тренинг

Задача . A. Раздели!


Каваширо Нитори — девочка, любящая спортивное программирование.

Однажды она нашла строку и целое число. Будучи опытным составителем задач, она сразу подумала о следующей задаче.

Дана строка \(s\) и параметр \(k\), проверьте, существует ли последовательность из \(k+1\) непустой строки \(a_1,a_2...,a_{k+1}\) такая, что \(\)s=a_1+a_2+\ldots +a_k+a_{k+1}+R(a_k)+R(a_{k-1})+\ldots+R(a_{1}).\(\)

Здесь \(+\) обозначает конкатенацию (соединение) строк. \(R(x)\) — разворот строки \(x\), например, \(R(abcd) = dcba\). Обратите внимание, что в выражении выше специально пропущено слагаемое вида \(R(a_{k+1})\).

Входные данные

Во входных данных находятся несколько наборов входных данных. В первой строке находится одно целое число \(t\) (\(1\le t\le 100\)) — количество наборов входных данных. Далее следуют наборы входных данных.

Первая строка каждого набора входных данных содержит два целых числа \(n\) и \(k\) (\(1\le n\le 100\), \(0\le k\le \lfloor \frac{n}{2} \rfloor\)) — длину строки \(s\) и параметр \(k\).

Вторая строка каждого набора входных данных содержит строку \(s\) длины \(n\), состоящую из строчных букв латинского алфавита.

Выходные данные

Для каждого набора входных данных выведите «YES» (без кавычек), если можно найти \(a_1,a_2,\ldots,a_{k+1}\), и «NO» (без кавычек) иначе.

Вы можете выводить каждую букву в любом регистре (строчную или заглавную).

Примечание

В первом наборе входных данных одно из решений \(a_1=qw\) и \(a_2=q\).

Во втором наборе входных данных одно из решений \(a_1=i\) и \(a_2=o\).

В пятом наборе входных данных одно из решений — это \(a_1=dokidokiliteratureclub\).


Примеры
Входные данныеВыходные данные
1 7
5 1
qwqwq
2 1
ab
3 1
ioi
4 2
icpc
22 0
dokidokiliteratureclub
19 8
imteamshanghaialice
6 3
aaaaaa
YES
NO
YES
NO
YES
NO
NO

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя