Задача №114115. Недалёкие строки

Сегодня на уроке строковедения профессор Моррис рассказывал студентам различные способы вычисления расстояния между двумя строками. Один из способов был следующий, пусть имеются две строки s и t длины n , состоящие только из десятичных цифр. Тогда цифровым расстоянием между двумя данными строками профессор Моррис считает сумму модулей разности цифр на одинаковых позициях, то есть , где s i означает цифру, записанную на позиции i в строке s , а t i означает цифру, записанную на позиции i в строке t .

В качестве домашнего задания профессор дал каждому студенту строку длины n и поручил выписать все строки длины n (а это целых 10 n строк) в порядке неубывания цифрового расстояния до данной строки. При равенстве расстояния до двух строк, их следует сравнивать лексикографически.

Поскольку у профессора мало времени, чтобы проконтролировать выполнение всего задания каждым из студентов, он дополнительно сообщил каждому из них число k и просит лишь сказать ему строку, находящуюся на k -м месте в выписанной последовательности. Студенты не горят желанием выполнять вручную столь объёмное и монотонное задание, поэтому попросили вас написать программу, которая будет выводить ответ по заданной строке и числу k .

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

В первой строке входных данных записаны два целых числа n и k ( 1 ≤ n ≤ 200 000 , 1 ≤ k min (10 n , 10 18 ) ) — длина строки, выданной профессором, и интересующая профессора позиция в итоговой последовательности.

Во второй строке записана строка, состоящая из n десятичных цифр.

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

Выведите строку из n десятичных цифр, которая будет записана на k -м месте в интересующей профессора последовательности.

Система оценки

Тесты к этой задаче состоят из пяти групп. Баллы за каждую группу ставятся только при прохождении всех тестов группы и всех тестов предыдущих групп.

Примечание

Во втором примере первые семь слов списка это « 00000 », « 00001 », « 00010 », « 00100 », « 01000 », « 10000 » и « 00002 ».

Слово x 1 , x 2 , ..., x a не превосходит слова y 1 , y 2 , ..., y b в лексикографическом порядке если верно одно из двух условий:

  • либо a b и x 1 = y 1 , ..., x a = y a , то есть первое слово является префиксом второго;
  • либо есть такая позиция 1 ≤ j min ( a , b ) , что x 1 = y 1 , ..., x j - 1 = y j - 1 и x j < y j , то есть, в первой позиции, в которой слова отличаются, в первом слове стоит меньшая буква.
Примеры
Входные данные
5 1
00000
Выходные данные
00000
Входные данные
5 7
00000
Выходные данные
00002
Входные данные
3 44
132
Выходные данные
212
Сдать: для сдачи задач необходимо войти в систему