12

Решение: Преобразование строки цифр

ЕГЭ · Информатика · Задание 12 · Алгоритмы и исполнители
ПовышеннаяФИПИDCB943Короткий ответ≈ 4 минутыРазбор в 4 шагаОтвет сверен с ключом
Условие

Исполнитель Редактор получает на вход строку цифр. Команда «заменить (v, w)» заменяет первое слева вхождение цепочки v на цепочку w, а команда «нашлось (v)» проверяет наличие цепочки v в строке. Цикл выполняется, пока его условие истинно.

Какая строка получится в результате применения программы к строке, состоящей из 132 идущих подряд цифр 9?

НАЧАЛО
ПОКА нашлось (22222) ИЛИ нашлось (9999)
ЕСЛИ нашлось (22222)
ТО заменить (22222, 99)
ИНАЧЕ заменить (9999, 2)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ

Открыть задачу и решить самому
Дальше ответЕсли ещё решаете — начните с подсказок: они ведут к ответу, но не выдают его.
К подсказкам

Решение по шагам

4 шага
1

Пока в строке нет пяти цифр 2 подряд, выполняется замена первого фрагмента $9999$ на $2$. Для достаточно длинной последовательности из девяток пять таких замен дают $22222$.

$$9999 \to 2$$
2

Когда появляется фрагмент $22222$, он заменяется на $99$. Поэтому после полного цикла количество девяток уменьшается на 18: четыре заменённых блока содержат 20 девяток, а результат добавляет 2 девятки.

$$n \to n - 20 + 2 = n - 18$$
3

Последовательность количеств девяток после циклов: $132 \to 114 \to 96 \to 78 \to 60 \to 42 \to 24 \to 6$.

Из шести девяток первая замена даёт строку $299$. В ней нет ни $9999$, ни $22222$, поэтому цикл завершается.

$$999999 \to 299$$
Ответ
299
299
так ответ выглядит в бланке

Где здесь ошибаются

Продолжают замену после исчезновения фрагментов $9999$ и $22222$.

Считают, что команда «заменить» заменяет все вхождения сразу, а не первое слева.

Забывают, что при наличии $22222$ выполняется именно эта ветвь условия.

Закрепить приёмВ теме «Алгоритмы и исполнители» ещё 431 задача — с ответом и таким же разбором.
Тренироваться

Как решать задание 12 ЕГЭ, информатика

Разбор этой задачи разложен на 4 шага: видно, откуда берётся каждое число и где теряется балл. Ответ приведён рядом с выкладками, а не вместо них.

Задача из темы «Алгоритмы и исполнители»: в ней 432 задачи, и у каждой есть такой же разбор. Регистрация не нужна.