eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Пошук пароля

Пошук пароля

Можливість відправляти закодовані повідомлення під час Другої світової війни була досить важливою для союзників. Повідомлення завжди відправлялися після їх кодування за допомогою відомого пароля. Мати фіксований пароль було небезпечно, тому виникла необхідність часто змінювати його. Однак слід розробити механізм відправлення нового пароля. У одного з математиків, який працював у криптографічній команді, виникла розумна ідея - відправити пароль, прихований у самому повідомленні. Цікавим моментом було те, що одержувачу повідомлення достатньо було знати тільки розмір пароля, а потім знайти його в отриманому тексті.

Пароль розміру n можна знайти пошуком в тексті підрядка з n символів, що найбільш часто зустрічається. Після знаходження пароля усі підрядки, що збігаються з ним, видаляються з тексту. Тепер пароль можна використовувати для розшифровки повідомлення.

Проте Ваша задача буде спрощена. Вам достатньо написати програму, яка за заданим розміром пароля та закодованим повідомленням знайде пароль відповідно до описаного вище алгоритму.

Розглянемо приклад, в якому розмір пароля дорівнює трьом (n = 3), а текст повідомлення має вигляд baababacb. Паролем буде aba, тому що розмір цього підрядка 3, він з'являється частіше всього у всьому тексті (двічі), а інші шість різних підрядків з'являються тільки один раз (baa, aab, bab, bac, acb).

Вхідні дані

Складається з декількох тестів. Кожний тест являє собою один рядок, в якому знаходиться довжина пароля n (0 < n10) та закодоване повідомлення. Повідомлення містить лише малі літери латинського алфавиту, його довжина не більша за $10^6$ та не менша за n.

Вихідні дані

Для кожного тесту в окремому рядку слід вивести шуканий пароль. Якщо існує декілька паролів, що відповідають умові задачі, то вивести лексикографічно найменший.

Ліміт часу 1 секунда
Ліміт використання пам'яті 128 MiB
Вхідні дані #1
3 baababacb
Вихідні дані #1
aba
Вхідні дані #2
1 thequickbrownfoxjumpsoverthelazydog
3 thequickbrownfoxjumpsoverthelazydog
4 testingthecodetofindtheerrortestandtestagain
5 thearraycanbetoobigsobecarefulandtherecantberarecasescanbe
Вихідні дані #2
o
the
test
canbe