Информатика. ЕГЭ
Задания для подготовки
Задачи разных лет из реальных экзаменов, демо-вариантов, сборников задач и других источников
Задание 24. Информатика. ЕГЭ. Поляков-5263
- Просмотры: 229
- Изменено: 17 января 2026
Текстовый файл содержит строку из набора A, B, C, D, E, F, всего не более чем из \(10^6\) символов. Найдите максимальное количество подряд идущих четвёрок символов ABEC, BDAC, CAFB, CFBA, стоящих одна за другой и пересекающихся с соседними четвёрками одной буквой. Например, в строке BDEABECAFBDACBD такие пары составляют подстроку ABECAFBDAC = ABEC + СAFB + ВDAC, итого \(3\) четвёрки.
Решение:
Python
s = open('5263.txt').readline().strip()
dp = [0] * len(s)
if s[0:4] in ('ABEC', 'BDAC', 'CAFB', 'CFBA'):
dp[3] = 1
if s[1:5] in ('ABEC', 'BDAC', 'CAFB', 'CFBA'):
dp[4] = 1
if s[2:6] in ('ABEC', 'BDAC', 'CAFB', 'CFBA'):
dp[5] = 1
for p in range(6, len(s)):
if s[p-3:p + 1] in ('ABEC', 'BDAC', 'CAFB', 'CFBA'):
if s[p-6:p-2] in ('ABEC', 'BDAC', 'CAFB', 'CFBA'):
dp[p] = dp[p-3] + 1
else:
dp[p] = 1
print(max(dp))
Ответ: \(81\)
Обсуждение задания
Здесь пока нет ни одного комментария. Будьте первым!


