Сегодня мы посмотрим на еще одно интересное задание на исполнителя РЕДАКТОР.
❓Задача заключается в следующем: написать какая строка получится в результате применения приведённой ниже программы к строке, состоящей из 125 идущих подряд цифр 8?
НАЧАЛО
ПОКА нашлось (333) ИЛИ нашлось (888)
ЕСЛИ нашлось (333)
ТО заменить (333, 8)
ИНАЧЕ заменить (888, 3)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
👀Давай посмотрим, как же вообще работает данный алгоритм:
Изначально у нас была строка: 8888888… (из 125 8), идём по программе:
нашлось 3 цифры 8″, поэтому заменяем их на 3: 38888….(одна цифра 3 и 122 цифры 8).
продолжаем заменять восьмёрки на 3: 33888…(две цифры 3 и 119 цифр 8),
и ещё раз: 333888…(3 цифры 3 и 116 цифр 8).
❗️ Внимательно! Сейчас мы не продолжим менять восьмёрки на тройки, так как у нас нашлось 3 тройки, которые заменяются на одну восьмерку!(условие про замену восьмёрок на тройки выполняется ТОЛЬКО В ТОМ в случае, если не нашлось трёх троек).
Поэтому сейчас у нас получится строка: 88888…(из 117 цифр 8).
🙏 Таким образом: за каждые 4 итерации (прохода) цикла будет убираться 3 + 3 + 3 — 1 = 8 восьмёрок.
=> Тогда после 15 раз по 4 итерации, то есть после 60 итераций, из строки будет убрано 15*8=120 восьмёрок, и она примет вид 88888. После чего цикл отработает ещё раз и заменит 88888 на 388.
Ответ: 388
Авторизуйтесь, чтобы оставить комментарий.