Задача к ЕГЭ по информатике на тему «поиск максимальной подстроки» №10

Текстовый файл 10.txt состоит не более чем из 106  символов. Определите максимальное количество идущих подряд символов, среди которых каждые пять подряд идущих символов различны между собой.

f = open(’C:/24_10.txt’)
s = f.readline()
maxi = 0

# По умолчанию будут подходить 4 символа,
# чтобы при выполнении первой проверки количество стало равно 5
k = 4

for i in range(0, len(s) - 4):
    x = s[i:i + 5]  # Срез 5 подряд идущих символов
    if len(set(x)) == 5:  # Если количество уникальных символов равно 5
        k += 1  # Добавляем к количеству новый крайний символ
        maxi = max(maxi, k)
    else:
        k = 4  # Сбрасываем счётчик до значения по умолчанию
print(maxi)

Ответ: 11
Оцените статью
Я решу все!