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

Задача . A. Много одинаковых подстрок


Задана строка \(t\) длины \(n\), состоящая из строчных букв латинского алфавита, и целое число \(k\).

Определим подстроку какой-либо строки \(s\) с индексами от \(l\) до \(r\) как \(s[l \dots r]\).

Ваша задача — составить такую строку \(s\) минимальной возможной длины, что в ней существует ровно \(k\) позиций \(i\) таких, что \(s[i \dots i + n - 1] = t\). Другими словами, ваша задача — составить такую строку \(s\) минимальной возможной длины, что ровно \(k\) подстрок строки \(s\) равны \(t\).

Гарантируется, что существует один возможный ответ.

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

Первая строка входных данных содержит два целых числа \(n\) и \(k\) (\(1 \le n, k \le 50\)) — длину строки \(t\) и количество подстрок.

Вторая строка входных данных содержит строку \(t\), состоящую ровно из \(n\) строчных букв латинского алфавита.

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

Выведите такую строку \(s\) минимально возможной длины, что ровно \(k\) подстрок строки \(s\) равны \(t\).

Гарантируется, что существует один возможный ответ.


Примеры
Входные данныеВыходные данные
1 3 4
aba
ababababa
2 3 2
cat
catcat

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

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