Задача на последовательность

Эту задачу я взял из недавно прошедшей Всероссийской физико-технической контрольной, основной тур. Можно было решить подсчётом вручную, однако сразу скажу, это будет долго и вы наверняка ошибётесь. Поэтому я решил создать програмку на Питоне.



Текст самого задания на последовательность


Последовательности символов создаются по следующему правилу. Нулевая строка: “ABCDEFGH”. Каждая из последующих строк создается следующим действием: дважды подряд записывается предыдущая строка и в конец дописывается очередная буква английского алфавита, начиная с A. Вот строки с номерами 1-3, созданные по этому правилу:



  1. ABCDEFGHABCDEFGHA
  2. ABCDEFGHABCDEFGHAABCDEFGHABCDEFGHAB
  3. ABCDEFGHABCDEFGHAABCDEFGHABCDEFGHABABCDEFGHABCDEFGHAABCDEFGHABCDEFGHABC.


Сколько раз в строке с номером 8 встретится символ D? В ответе укажите целое число.



Как видим, задача предельно простая, однако последовательность получается достаточно большой. Поэтому пишем код. Я использовал цикл с параметром, цикл с предусловием и две строки



Программа с кодом на Питоне



a=b=ABCDEFGH

for i in range(0,8):
c=a+a+b[i] # заносим две строки и следующий символ
a=c
print(c) # печатает последнюю последовательность
i=0
sum=0
while i if c[i]==D:
sum=sum+1
i=i+1
print(sum) # печатает количество входящих D в строку.

Конечно, можно сделать код более простой и использовать уже существующие функции, но учтите, что пришлось решать быстро.


Это то, что получилось на последнем, восьмом шаге программы. Сможете подсчитать вручную? Да, вы монстр, батенька!



Вот и всё, ребята! Удачного освоения Питона!


Ввод данных в список и его сортировка Сумма ряда натуральных чисел на Питоне