На головоломки SE є так звані "проблеми з matchstick", в яких математика записується на сірники, і вам дозволяється переміщувати певну їх кількість, щоб отримати певну властивість.
У цьому питанні ми розглянемо лише цілі числа, представлені у 7-сегментному форматі відображення. Ось усі 10 цифр у такому форматі:
__ __ __ __ __ __ __ __
| | | __| __| |__| |__ |__ | |__| |__|
|__| | |__ __| | __| |__| | |__| __|
Кожен сегмент дисплея - це одна "сірник", яку можна переміщувати незалежно від решти числа. Сірники нероздільні і незнищенні, їх неможливо зламати або видалити будь-якими способами.
Загальна головоломка - взяти число, вказане в базі 10, і спробувати зробити якомога більшу кількість за певну кількість рухів. Переміщення вважається одним рухом відповідника від будь-якого займаного гнізда до будь-якого іншого незайнятого слота. Вам цілком дозволено робити нові цифри по обидві сторони від числа, наприклад 0 може бути зроблено в 77 дати 3 ходи
__ __ __ __ __ __ __
| | | | | | | | |
|__| , __| , | , | |
Однак ви не можете робити один слот на 2 або створювати нові проміжки між існуючими, наприклад, перетворити 4 на 11 посередині числа або вставити нові цифри між існуючими. Кожен хід не повинен вносити належне число, але кінцевим результатом має бути відповідне число в базовому 10 семи сегментовому дисплеї. Вам не потрібно використовувати кожен хід, якщо цього не бажаєте. На відміну від загадки, це [тег: запитання із закритим завершенням], ви можете не використовувати жодних операторів (множення, експоненцію тощо) або математичних констант (Pi, число Грема тощо) у своїх відповідях.
Завдання
Напишіть програму або функцію, яка приймає число і кількість рухів як вхідних даних і повертає найбільшу кількість, яку можна зробити за допомогою такої кількості ходів за початковим номером.
Це питання з кодовим гольфом, тому відповіді будуть набиратись у байтах, при цьому менше байтів буде кращим.
Випробування
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