← К задачам
Средне · +3ЕГЭ задание 12МоделированиеОбработка строк

Редактор: замены 12→2 и 21→1

Исполнитель Редактор обрабатывает строку двумя командами:

  • замена(v, w) — заменяет первое вхождение подстроки v на строку w;
  • нашлось(v) — истина, если подстрока v встречается в строке.

Напишите функцию redaktor_dvuh_zamen(s), моделирующую программу:

ПОКА нашлось('12') ИЛИ нашлось('21')
    ЕСЛИ нашлось('12')
        ТО замена('12', '2')
        ИНАЧЕ замена('21', '1')
    КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА

Функция применяет команды, пока это возможно, и возвращает итоговую строку. Каждая замена укорачивает строку на один символ, поэтому цикл всегда завершается.

Вход: строка s из цифр 1 и 2 (может быть пустой). Выход: строка после стабилизации.

Примеры:

  • redaktor_dvuh_zamen('1212')'22'
  • redaktor_dvuh_zamen('221')'1'
def redaktor_dvuh_zamen(s):
    # ваш код
    pass
Для запуска тестов необходима авторизация.