Строки создаются по следующему правилу: первая строка состорит из одного символа -...

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

Строки создаются по следующему правилу: первая строка состорит из одного символа - латинской буквы А. Каждая из последующих цепочек создается такими действиями: в очередную строку сначала записывается буква, чей порядковый номер в алфавите соответствует номеру строки, к ней слева дважды подряд приписываетя предыдущая строка.
вот первые 4 строки, созданные по этому правилу:
1)A
2)AAB
3)AABAABC
4)AABAABCAABAABCD
...
Латинский алфавит для справки:ABCDEFGH....
Запишите шесть символов подряд, стоящие в седьмой строке со 116го по 121е место(считая слева направо)

Подскажите алгоритм решения таких задач.


Информатика (57.1k баллов) | 305 просмотров
Дан 1 ответ
0 голосов

сначала определяем к-во символов в каждой строке

1-1 2-3 3-7 4-15 5-31 6-63 7-127

7-я строка имеет 127 символов и состоит из символа G к которому слева добавлено

две 6-х строки, определяем номера начала и конца каждой строки

6(1-63)  6(64-126) G(127)

видим что нужные символы во 2-й 6-й строке

6-я строка состоит из символа F к которому слева добавлено

две 5-х строки, определяем номера начала и конца каждой строки

5(64-94) 5(95-125) F(126)

нужные символы во 2-й 5-й строке

5-я строка состоит из символа E к которому слева добавлено

две 4-х строки, определяем номера начала и конца каждой строки

4(95-109) 4(110-124) E(125)

и вот мы наконец добрались до уже известной 4-й строки и знаем номера символов в ней, 

AABAAB C(116) A(117) A(118) B(119) A(120) A(121) B(122) C(123) D(124)

таким образом нужные символы CAABAA

алгоритм решения такой разбиваем строки на подстроки и узнаем номера начала и конца каждой, пока не дойдем до уже известной строки

(1.5k баллов)