#1185. 全部变成零

全部变成零

题目描述

给定一个长度为 nn 的二进制字符串 ss 和一个正整数 kk

你可以执行以下操作任意次(包括 00 次):

  • 选择一个下标 ii1ink1 \le i \le n-k);
  • 翻转字符串 ss 在位置 ii 和位置 i+ki+k 处的字符(即将 0 变为 1,将 1 变为 0)。

例如,如果 s="10110"s=\text{"10110"}k=2k=2,当你选择 i=2i=2 时,将翻转位置 2244 处的字符,字符串将变为 "11100"\text{"11100"}

请判断是否能够通过上述操作,将整个字符串 ss 的所有字符都变为 0

输入格式

第一行包含一个整数 tt1t1041 \le t \le 10^4)—— 测试用例的数量。

对于每个测试用例:

  • 第一行包含两个整数 nnkk1kn2×1051 \le k \le n \le 2 \times 10^5)—— 分别表示字符串的长度和给定的操作间隔。
  • 第二行包含一个长度为 nn 的二进制字符串 ss

输出格式

对于每个测试用例,如果能够将整个字符串变为全 0,输出 YES;否则输出 NO

样例输入 1

5
4 2
1010
3 2
111
3 3
111
3 1
110
1 1
1

样例输出 1

YES
NO
NO
YES
NO

说明

数据范围

  • 对于所有测试点,保证 1t1041 \le t \le 10^4
  • 对于每个测试用例,保证 1kn2×1051 \le k \le n \le 2 \times 10^5
  • 保证 ss 仅由字符 01 组成。
  • 保证同一测试点内所有测试用例的 nn 之和不超过 2×1052 \times 10^5
  • 保证所有的输入数值均为整数。