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

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

Ответы 1

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

    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

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

  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years