D. Плотная подпоследовательность
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Вам дана строка s, состоящая из строчных английских букв, и целое число m.

Выберем из данной строки некоторые символы так, чтобы в любой непрерывный подотрезок длины m попал хотя бы один выбранный символ. Заметьте, что здесь выбираются именно позиции символов, а не сами символы.

Затем из символов, которые стоят на выбранных позициях, собирается новая строка. При этом необходимо использовать все символы на выбранных позициях, но их разрешается переставлять как угодно.

Формально, мы выбираем некоторую подпоследовательность индексов 1 ≤ i1 < i2 < ... < it ≤ |s|. Выбранная последовательность должна удовлетворять условию: для любого j, такого что 1 ≤ j ≤ |s| - m + 1, среди выбранных индексов найдется хотя бы один, который принадлежит отрезку [j,  j + m - 1], то есть существует k от 1 до t, такое что j ≤ ik ≤ j + m - 1.

Затем мы выбираем некоторую перестановку p выбранных индексов и составляем новую строчку sip1sip2... sipt.

Найдите лексикографически минимальную строку, которую можно получить с помощью описанных действий.

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

Первая строка входных данных содержит одно число m (1 ≤ m ≤ 100 000).

Во второй строке записана сама строка s. Гарантируется, что строка непустая, состоит из строчных английский букв и её длина не превосходит 100 000. Также, гарантируется, что число m не превосходит длины строки.

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

Выведите лексикографически минимальную строку, которую можно получить с помощью описанных действий.

Примеры
Входные данные
3
cbabc
Выходные данные
a
Входные данные
2
abcab
Выходные данные
aab
Входные данные
3
bcabcbaccba
Выходные данные
aaabb
Примечание

В первом примере мы можем выбрать подпоследовательность {3} и составить строку «a».

Во втором примере мы можем выбрать подпоследовательность {1, 2, 4} и составить из символов на этих позициях строку «aab».