13.: формальные исполнители
: 3
задан алгоритм обработки строки:

заменить в строке все символы 'a' на подстроку 'ab' и увеличить n на единицу. если n=k, то завершить выполнение алгоритма, иначе перейти на шаг 2.
заменить в строке все символы 'b' на подстроку 'ab' и увеличить n на единицу. если n=k, то завершить выполнение алгоритма, иначе перейти на шаг 3.
заменить в строке все подстроки 'ab' на символ 'a' и увеличить n на единицу. если n=k, то завершить выполнение алгоритма, иначе перейти на шаг 1.
известно, что перед началом выполнения была строка 'aa', n=0 и k=43. определите количество символов a в строке, получившейся после завершения алгоритма. в ответе укажите целое число.

катя4770 катя4770    3   26.08.2019 12:56    0

Ответы
zhzdd zhzdd  05.10.2020 20:58

Если я всё правильно понял, то на Python - примерно так:

st = 'AA'

N = 0

K = 43

while N != K:

   st = st.replace('A', 'AB')

   N += 1

   if N != K:

       st = st.replace('B', 'AB')

       N += 1

       if N != K:

           st = st.replace('AB', 'A')

           N += 1

print(st.count('A'))

Объяснение:

Выходит 32768 символов A

ПОКАЗАТЬ ОТВЕТЫ
gerasi1 gerasi1  05.10.2020 20:58

32768

Объяснение:

Чисто символов "А" в строке вычисляется по формуле 2^([(K-2)/3]+2) , соответственно, 2^([(43-2)/3]+2) = 32768

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика