CF1496A.Split it!

传统题 时间 2000 ms 内存 256 MiB 4 尝试 1 已通过 1 标签

Split it!

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 ss and a parameter kk, you need to check if there exist k+1k+1 non-empty strings a1,a2...,ak+1a_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 defineR(x)R(x)as a reversed stringxx. For exampleR(abcd)=dcbaR(abcd) = dcba. Note that in the formula above the partR(a_k+1)R(a\_{k+1}) is intentionally skipped.

Input

The input consists of multiple test cases. The first line contains a single integer tt (1t1001\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 nn, kk (1n1001\le n\le 100, 0kn20\le k\le \lfloor \frac{n}{2} \rfloor)  — the length of the string ss and the parameter kk.

The second line of each test case description contains a single string ss of length nn, consisting of lowercase English letters.

Output

For each test case, print "YES" (without quotes), if it is possible to find a1,a2,,ak+1a_1,a_2,\ldots,a_{k+1}, and "NO" (without quotes) otherwise.

You can print letters in any case (upper or lower).

Note

In the first test case, one possible solution is a1=qwa_1=qw and a2=qa_2=q.

In the third test case, one possible solution is a1=ia_1=i and a2=oa_2=o.

In the fifth test case, one possible solution is a1=dokidokiliteraturecluba_1=dokidokiliteratureclub.

Samples

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

在线编程 IDE

建议全屏模式获得最佳体验