Решение: Редактор и цепочка восьмёрок
Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Команда «заменить (v, w)» заменяет в строке первое слева вхождение цепочки $v$ на цепочку $w$. Команда «нашлось (v)» проверяет, встречается ли цепочка $v$ в строке, не изменяя её. Цикл выполняется, пока условие истинно.
Дана программа для Редактора:
НАЧАЛО
ПОКА нашлось (48) ИЛИ нашлось (288) ИЛИ нашлось (8888)
ЕСЛИ нашлось (48)
ТО заменить (48, 8)
КОНЕЦ ЕСЛИ
ЕСЛИ нашлось (288)
ТО заменить (288, 84)
КОНЕЦ ЕСЛИ
ЕСЛИ нашлось (8888)
ТО заменить (8888, 2)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
На вход программе поступает строка, начинающаяся с цифры «4», а затем содержащая $n$ цифр «8», где $3 < n < 10000$. Определите наименьшее значение $n$, при котором сумма цифр в строке, получившейся после выполнения программы, равна $64$.
Решение по шагам
3 шагаДля каждого значения $n$ формируется исходная строка $4$ и $n$ цифр $8$, после чего последовательно выполняются все команды программы до исчезновения цепочек $48$, $288$ и $8888$.
При последовательной проверке значений $n$ начиная с $4$ сумма цифр результата отслеживается после полного завершения работы программы.
Наименьшее значение, при котором итоговая сумма цифр равна $64$, получается при $n=121$.
$$n=121$$Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.
Где здесь ошибаются
Выполнять все возможные замены одного типа за один проход вместо только первой замены.
Забывать, что команды выполняются последовательно: сначала замена $48$, затем $288$, затем $8888$.
Продолжать выполнение цикла после исчезновения всех трёх искомых цепочек.