Надіслати розв'язок

Бали: 30,00 (partial)
Time limit: 0.5s
Memory limit: 256M
Input: stdin
Output: stdout

Author:
Problem types
Allowed languages
Assembly, Awk, Brain****, C, C++, Java, mono C#, Pascal, Perl, Python, Sed, Text, vb

Анастасія має рядок ~s~ довжини ~n~, і як велика любителька структури даних ~set~ вона додала всі непусті підрядки рядка ~s~ в ~set~.

Одного разу, її попросили сказати ~k~-тий елемент в ~set~-і, і вона відповіла! Але їй стало цікаво, чи зможете ви це зробити?

Якщо ~k~-тий елемент не існує виведіть "Not exist", без лапок.

Пригадаємо, що ~set~ — це структура даних яка містить тільки унікальні елементи в порядку їхнього зростання.

Підрядок рядка ~s~ — це рядок, що складається з одної або декількох послідовних літер з рядка ~s~, наприклад, рядки "ab", "abc" і "b" є підрядками рядка "abc", в той час як "acb" і "ac" — не є. Будь-який рядок є підрядком самого себе.

Input

В першому рядку задано два чиcла ~n,~ ~k~ ~(1 \le n \le 10^5,~ ~1\le k \le min(n*(n + 1),~ ~10^9))~ — довжина рядка, а також номер елемент який вам слід знайти.

В наступному рядку дано рядок ~s~ довжини ~n~.

Output

Виведіть ~k~-тий по порядку рядок в ~set~-і.

Якщо ~k~-тий елемент не існує виведіть "Not exist", без лапок.

Sample Input 1

4 2
aaba

Sample Output 1

aa

Notes

Якщо виписати не пусті, унікальні підрятки рядка "aaba" в порядку зростання, то це буде "a", "aa", "aab", "aaba", "ab", "aba", "b", "ba".


Коментарі

Please read the guidelines before commenting.


Ще немає коментарів.