#P1364. 【饿了么】2024-8-17-第一题-回文字符串

【饿了么】2024-8-17-第一题-回文字符串

题目描述

给定一个长度为 nn且仅由'0''1'两种字符构成的字符串 ss。每次操作你都可以选择字符串 ss 的任意一个字符,并将其反置(即'0'变为'1''1'变为'0')。你有恰好 kk 次操作,问是否可以通过这 kk 次操作后,使字符串 ss 变为一个回文字符串。

若当前字符为 '0',反置后为 '1';若当前字符为 '1',反置后为 '0'。一个字符串被称作回文字符串,当且仅当这个字符串从左往右和从右往左读都是相同的。

输入描述

每个测试文件均包含多组测试数据。第一行输入一个整数 T(1T100)T (1 \le T \le 100) 代表数据组数,每组测试数据描述如下

第一行输入两个整数 n,k(1n1000,0kn)n, k (1 \le n \le 1000,0\le k \le n)

第二行输入一个长度为 nn 且仅由 '0''1' 两种字符构成的字符串 ss

输出描述

对于每一组测试数据,如果经过恰好kk次操作后,字符串 ss 可以成为一个回文字符串,在一行输出 YES;否则,直接输出 NO

样例

输入

3
6 1  
101100  
6 2  
101100  
6 3  
101100

输出

YES  
NO  
YES

样例解释

对于第一组测试数据,可得到的回文字符串为 "101101""001100"

对于第二组测试数据,无论如何都不能使得其变成回文串;

对于第三组测试数据,由于其包含第一组测试数据,因此也可以变成回文串。