В загадочной SE есть так называемые «проблемы со спичками», в которых математика записывается в спичечные палочки, и вам разрешается перемещать определенное количество из них, чтобы получить определенное свойство.
В этом вопросе мы будем рассматривать только целые числа, представленные в 7-сегментном формате отображения. Вот все 10 цифр в этом формате:
__ __ __ __ __ __ __ __
| | | __| __| |__| |__ |__ | |__| |__|
|__| | |__ __| | __| |__| | |__| __|
Каждый сегмент дисплея представляет собой одну «спичку», которую можно перемещать независимо от остальной части номера. Спички неразделимы и неразрушимы, их нельзя сломать или удалить никакими средствами.
Обычная головоломка - взять число, указанное в базе 10, и попытаться сделать наибольшее возможное число за данное количество ходов. Ход считается одним движением спички из любого занятого слота в любой другой незанятый слот. Вам вполне разрешено делать новые цифры по обе стороны от номера, например, 0 можно сделать из 77 за 3 хода
__ __ __ __ __ __ __
| | | | | | | | |
|__| , __| , | , | |
Однако вы не можете сделать один слот на 2 или создать новые слоты между существующими, например, превратить 4 в 11 в середине числа или вставить новые цифры между существующими. Каждое движение не должно составлять правильное число, но конечный результат должен быть правильным числом в основном 10-сегментном дисплее. Вам не нужно использовать каждый ход, если вы не хотите. В отличие от головоломок, это [тег: закрытый вопрос], вы не можете использовать какие-либо операторы (умножение, возведение в степень и т. Д.) Или математические константы (число Пи, число Грэма и т. Д.) В своих ответах.
задача
Напишите программу или функцию, которая принимает число и количество ходов в качестве входных данных и возвращает наибольшее число, которое может быть сделано с таким количеством ходов исходного числа.
Это вопрос кода-гольфа, поэтому ответы будут оцениваться в байтах, причем меньше байтов будет лучше.
Тестовые случаи
n, moves -> max
0, 1 -> 9
0, 3 -> 77
0, 4 -> 111
8, 3 -> 74
220, 1 -> 320
220, 2 -> 520
220, 3 -> 7227
220, 4 -> 22111
220, 5 -> 32111
747, 1 -> 747
747, 2 -> 7171
747, 3 -> 7711
919, 2 -> 991