Олимпиадный тренинг

Задача . _St-22_10-kege-12(a)


Задача

Темы:
Исполнитель Редактор получает на вход строку цифр и преобразует её.
Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.
А) заменить (v, w).
Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w.
Например, выполнение команды
заменить (111, 27) преобразует строку 05111150 в строку 0527150.
Если в строке нет вхождений цепочки v, то выполнение команды заменить (v, w) не меняет эту строку.
Б) нашлось (v).
Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор.
Если она встречается, то команда возвращает логическое значение «истина»,
в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется.
Дана программа для редактора:

НАЧАЛО
    ПОКА НЕ нашлось (00)
          заменить (011, 20)
          заменить (022, 10)
          заменить (01, 220)
          заменить (02, 110)
    КОНЕЦ ПОКА
КОНЕЦ

Известно, что исходная строка A содержала ровно два нуля – на первом и на последнем месте,
а также поровну единиц и двоек.
После выполнения данной программы получилась строка B, содержащая 40 единиц и больше 50 двоек.
Какое наименьшее количество двоек может быть в строке B?

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
Комментарий учителя