Исполнитель Корректор получает на вход строку и преобразовывает её. Корректор может выполнять две команды, в обеих командах v и w обозначают цепочки символов. заменить (v, w) — эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w, если цепочки v в строке нет, эта команда не изменяет строку. нашлось (v) — эта команда проверяет, встречается ли цепочка v в строке исполнителя Корректор, если она встречается, то команда возвращает логическое значение "истина", в противном случае возвращает значение "ложь". Дана программа для исполнителя Корректор: ПОКА нашлось (MMM) ИЛИ нашлось (NNN) ЕСЛИ нашлось (MMM) ТО заменить (MMM, N) ИНАЧЕ заменить (NNN, M) КОНЕЦ ЕСЛИ КОНЕЦ ПОКА Дана строка, состоящая из 300 символов M. Сколько символов M останется в строке после обработки по этой программе?
Задание

Исполнитель Корректор получает на вход строку и преобразовывает её.
Корректор может выполнять две команды, в обеих командах v и w обозначают цепочки символов.

заменить \(v, w\) — эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w, если цепочки v в строке нет, эта команда не изменяет строку.
нашлось \(v\) — эта команда проверяет, встречается ли цепочка v в строке исполнителя Корректор, если она встречается, то команда возвращает логическое значение "истина", в противном случае возвращает значение "ложь".

Дана программа для исполнителя Корректор:

ПОКА нашлось \(MMM\) ИЛИ нашлось \(NNN\)
ЕСЛИ нашлось \(MMM\)
ТО заменить \(MMM, N\)
ИНАЧЕ заменить \(NNN, M\)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА

Дана строка, состоящая из 300 символов M. Сколько символов M останется в строке после обработки по этой программе?