Задание 14 из ЕГЭ. Не сходится ответ... Какая строка получится в результате применения...

0 голосов
255 просмотров

Задание 14 из ЕГЭ. Не сходится ответ...
Какая строка получится в результате применения приведённой ниже
программы к строке, состоящей из 99 единиц?
НАЧАЛО
ПОКА
нашлось
(111)
ЕСЛИ
наш лось
(222)
ТО
заменить
(222, 1)
ИНАЧЕ
заменить
(111, 2)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ

Ребят, ответ же 2? Я туплю сижу, т.к. в ответах написно 22211, но 222 - это 1 и 111 - это 2... помогите


Информатика (19 баллов) | 255 просмотров
0

а в ответе не 2211

0

ответ 2211 должен быть в смысле...

Дан 1 ответ
0 голосов
Правильный ответ

Имеем строку из единиц длиной 99 символов.
Пока в строке имеется подстрока 111, выполняется цикл.
Подстрока 111 заменяется на 2 и это уменьшает длину строки на 2 символа.
Эта операция повторяется, пока не появится подстрока 222, что достигается за три прохода по циклу. При этом длина строки в целом сократится на 6.
Подстрока 222 заменяется на 1, после чего получается строка исходного вида (из одних единиц), но с длиной на 8 меньше исходной.
Этот процесс будет повторятся и длина строки последовательно будет такой:
99, 91, 83, ... 11. Можно предположить, что строка окончательно примет длину 99 mod 8 = 3, но все немного сложнее.
Дело в том, что строка длиной 11, т.е. 1111111111 будет последовательно преобразована к
211111111
2211111
22211
и после этого цикл закончится, поскольку подстроки 111 больше найдено не будет.

Ответ: 22211

(150k баллов)
0

там переход после замены происходит в начало массива, а не в место -откуда произошла замена...

0

после завершение Если,возврат на Пока с начала массива снова

0

тогда почему первые три 2 не заменяются?

0

поняла

0

хорошо