Алиса и Боб играют в игру. Изначально у них есть строка $$$s_1, s_2, \dots, s_n$$$, состоящая только из символов . и X. Игроки ходят по очереди, и Алиса ходит первой. В течении хода игрок должен выбрать непрерывную подстроку, состоящую только из символов ., и заменить каждый символ в ней на X. Алиса выбирает подстроки длины ровно $$$a$$$, а Боб выбирает подстроки длины ровно $$$b$$$. Гарантируется, что $$$a > b$$$.
Например, если $$$s =$$$ ...X.. и $$$a = 3$$$, $$$b = 2$$$, то после хода Алисы строка может превратиться только в XXXX... Если $$$s =$$$ ...X.., и сейчас ход Боба, то после него строка может превратиться в XX.X.., .XXX.. или ...XXX.
Игрок, который не может сделать ход, считается проигравшим. Вам нужно определить, кто выиграет в этой игре если оба игрока играют оптимально.
Вам нужно ответить на $$$q$$$ независимых запросов.
Первая строка содержит число $$$q$$$ ($$$1 \le q \le 3 \cdot 10^5$$$) — количество запросов.
Первая строка каждого запроса содержит два числа $$$a$$$ и $$$b$$$ ($$$1 \le b < a \le 3 \cdot 10^5$$$).
Вторая строка каждого запроса содержит строку $$$s$$$ ($$$1 \le |s| \le 3 \cdot 10^5$$$), состоящую только из символов . и X.
Гарантируется, что сумма $$$|s|$$$ по всем запросам не превосходит $$$3 \cdot 10^5$$$.
На каждый запрос выведите YES, если Алиса может выиграть, и NO в обратном случае.
Вы можете выводить ответ в любом регистре (например, строки yEs, yes, Yes и YES будут распознаны как положительный ответ).
3 3 2 XX......XX...X 4 2 X...X.X..X 5 3 .......X..X
YES NO YES
В первом запросе Алиса может выбрать подстроку $$$s_3 \dots s_5$$$. После этого $$$s$$$ превратится в XXXXX...XX...X. Теперь, независимо от хода Боба, у Алисы будет возможность сделать второй ход, а вот Боб второй ход сделать не сможет.
Во втором запросе Алиса не может выиграть, так как не может сделать даже первый ход.
В третьем запросе Алиса может выбрать подстроку $$$s_2 \dots s_6$$$. После этого $$$s$$$ превратится в .XXXXX.X..X, и Боб не сможет сделать ход.
Название |
---|