Текстовый файл состоит не более чем из \(10^6\) символов и содержит только буквы латинского алфавита A, B, C, D, E. Определите максимальное количество идущих подряд символов в прилагаемом файле, среди которых пара символов CD (в указанном порядке) встречается не более \(200\) раз, а пара символов AB (в указанном порядке) встречается не менее \(30\) раз.
Решение:
Python
s = open('24.txt').readline().strip()
cd = [-1] + [p for p in range(len(s) - 2) if s[p:p+2] == 'CD'] + [len(s)]
max_len = 0
for i in range(len(cd) - 201):
left, right = cd[i] + 1, cd[i + 201]
if s[left:right+1].count('AB') > 29:
max_len = max(max_len, right - left + 1)
print(max_len)
Ответ: \(2511\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене