CF1496A Split it!
Description
Kawashiro Nitori is a girl who loves competitive programming.
One day she found a string and an integer. As an advanced problem setter, she quickly thought of a problem.
Given a string $ s $ and a parameter $ k $ , you need to check if there exist $ k+1 $ non-empty strings $ a_1,a_2...,a_{k+1} $ , such that $ s=a_1+a_2+\ldots +a_k+a_{k+1}+R(a_k)+R(a_{k-1})+\ldots+R(a_{1}). $ Here $ + $ represents concatenation. We define $ R(x) $ as a reversed string $ x $ . For example $ R(abcd) = dcba $ . Note that in the formula above the part $ R(a\_{k+1})$$$ is intentionally skipped.
Input Format
The input consists of multiple test cases. The first line contains a single integer $ t $ ( $ 1\le t\le 100 $ ) — the number of test cases. The description of the test cases follows.
The first line of each test case description contains two integers $ n $ , $ k $ ( $ 1\le n\le 100 $ , $ 0\le k\le \lfloor \frac{n}{2} \rfloor $ ) — the length of the string $ s $ and the parameter $ k $ .
The second line of each test case description contains a single string $ s $ of length $ n $ , consisting of lowercase English letters.
Output Format
For each test case, print "YES" (without quotes), if it is possible to find $ a_1,a_2,\ldots,a_{k+1} $ , and "NO" (without quotes) otherwise.
You can print letters in any case (upper or lower).
Explanation/Hint
In the first test case, one possible solution is $ a_1=qw $ and $ a_2=q $ .
In the third test case, one possible solution is $ a_1=i $ and $ a_2=o $ .
In the fifth test case, one possible solution is $ a_1=dokidokiliteratureclub $ .