Исполнитель Редактор получает на вход cтроку цифр и преобразует её. Редактор может выполнять две команды, в обеих командах и
обозначают цепочки цифр.
А)
Эта команда заменяет в строке первое слева вхождение цепочки на цепочку
. Например, выполнение команды
преобразует строку в строку
Если в строке нет вхождений цепочки то выполнение команды заменить
не меняет эту строку.
Б)
Эта команда проверяет, встречается ли цепочка в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение
, в противном случае возвращает значение
. Строка исполнителя при этом не изменяется.
Цикл
выполняется, пока условие истинно.
Дана программа для редактора:
Какая строка получится в результате применения приведённой выше программы к строке, состоящей из идущих подряд строк
? В ответе запишите полученную строку.
Решение 1. Руками
Алгоритм на каждом шаге уменьшает количество строк на
. Поэтому он сможет
раз зайти в цикл и получить в конце строку
. Снова в цикл мы не зайдем так как не найдётся
.
Решение 2. Программой
n = ’23’ * 14
while ’2323’ in n:
n = n.replace(’2323’, ’23’, 1)
print(n)