Текстовый файл 1.txt содержит строку из заглавных латинских букв A,B и С, всего не более чем из символов. Определите максимальное количество идущих подряд троек символов BBC или AAC.
f = open(’24.txt’)
s = f.readline()
#Заменяем BBC и AAC на *
s = s.replace(’BBC’,’*’).replace(’AAC’,’*’)
#Запускаем цикл,который проверяет есть ли в строке i подряд идущих троек
for i in range(len(s)):
if ’*’*i in s:
print(i)
Другое решение
file = open(’24.txt’)
s = file.read()
max_counter = 0
temp_counter = 0
for start_step in range(3):
for index in range(start_step, len(s) - len(s) % 3 - 2, 3):
if s[index:index + 3] == "BBC" or s[index:index + 3] == "AAC":
temp_counter += 1
max_counter = max(max_counter, temp_counter)
else:
temp_counter = 0
print(max_counter)
Ответ: 4