Олимпиадный тренинг

Задача . A. Покрыли ли мы всё?


Вам дано два целых числа \(n\) и \(k\) вместе со строкой \(s\).

Ваша задача состоит в том, чтобы проверить, входят ли все возможные строки длины \(n\), которые могут быть получены из первых \(k\) прописных букв латинского алфавита, как подпоследовательности в \(s\). Если ответ NO, вам необходимо также найти строку длины \(n\) из первых \(k\) прописных букв латинского алфавита такую, что она не входит как подпоследовательность в \(s\).

Если существует несколько ответов — выведите любой.

Примечание: Строка \(a\) называется подпоследовательностью другой строки \(b\), если \(a\) может быть получена удалением нескольких (возможно нуля) символов из \(b\) без изменения порядка оставшихся символов.

Входные данные

В первой строке содержится одно целое число \(t \, (1 \le t \le 10^5)\) количество наборов входных данных.

Первая строка каждого набора входных данных содержит \(3\) целых числа \(n \, (1 \le n \le 26), \: k \, (1 \le k \le 26), \: m \, (1 \le m \le 1000)\) где \(n\) и \(k\) означают то же, что и в условии, а \(m\) означает длину строки \(s\).

Вторая строка каждого набора входных данных содержит строку \(s\) длины \(m\), состоящую только из первых \(k\) прописных букв латинского алфавита.

Гарантируется, что сумма \(m\) и сумма \(n\) по всем наборам входных данных не превосходит \(10^6\).

Выходные данные

Для каждого набора входных данных выведите YES если все возможные строки длины \(n\) состоящие только из первых \(k\) прописных букв латинского алфавита присутствуют как подпоследовательность в \(s\), а иначе выведите NO.

Если ваш ответ NO, дополнительно выведите строку длины \(n\), которая состоит только из первых \(k\) прописных букв латинского алфавита, и не входит как подпоследовательность \(s\), в следующей строке.

Вы можете писать каждую букву YES и NO в любом регистре (например, YES, yES, YeS будут распознаны как положительный ответ).

Примечание

В первом наборе входных данных все возможные строки (aa, ab, ba, bb) длины \(2\), которые могут быть получены из первых \(2\) прописных букв латинского алфавита, присутствуют как подпоследовательности в строке abba.

Во втором наборе входных данных строка aa не является подпоследовательностью abb.


Примеры
Входные данныеВыходные данные
1 3
2 2 4
abba
2 2 3
abb
3 3 10
aabbccabab
YES
NO
aa
NO
ccc

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w643
Комментарий учителя