Задача к ЕГЭ по информатике на тему «задачи под вебы» №9

Задача с ЕГЭ-2023

Текстовый файл 24-263.txt состоит не более чем из 106  символов и содержит только заглавные буквы латинского алфавита. Определите максимальную длину подстроки, в которой символ Y  встречается не более 150 раз.

f = open("24-263.txt")
s = f.readline()
start = 0 # Начало текущей подстроки
yc = 0 # Количество символов ’Y’ в текущей подстроке
mx = 0 # Максимальная длина подстроки, удовлетворяющей условию
# Проходим по строке с помощью двух указателей (start и end)
for end in range(len(s)):
# Если текущий символ - ’Y’, увеличиваем счетчик yc
    if s[end] == ’Y’:
        yc += 1
# Если количество ’Y’ превышает 150, сдвигаем начало подстроки вправо
    while yc > 150:
# Если символ в начале подстроки - ’Y’, уменьшаем счетчик yc
        if s[start] == ’Y’:
            yc -= 1
        start += 1 # Сдвигаем начало подстроки
# Обновляем максимальную длину подстроки, если текущая подстрока длиннее
    if end - start > mx:
        mx = end - start
print(mx + 1)

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