Исполнитель Редактор получает на вход строку цифр и преобразует её. Редактор может выполнять две команды, в обеих командах и
обозначают цепочки цифр.
А) заменить .
Эта команда заменяет в строке первое слева вхождение цепочки на цепочку
. Например, выполнение команды
заменить
преобразует строку в строку
.
Если в строке нет вхождений цепочки , то выполнение команды заменить
не меняет эту строку.
Б) нашлось .
Эта команда проверяет, встречается ли цепочка в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется.
Цикл
ПОКА условие
последовательность команд
КОНЕЦ ПОКА
выполняется, пока условие истинно.
Дана программа для редактора:
НАЧАЛО
ПОКА нашлось
заменить
заменить
КОНЕЦ ПОКА
КОНЕЦ
В результате работы программы к строке получилась строка, в которой содержится
цифр
. Сколько цифр
было в изначальной строке?
for i in range(100):
n = "1" * 44 + "5" * i + "3" * 12
while "15" in n:
n = n.replace("15", "5", 1)
n = n.replace("53", "3", 1)
if n.count("5") == 30:
print(i)
break