ЕГЭ, ОГЭ, программирование и робототехника в Калининграде

№ 24027. Основная волна

Текстовый файл состоит из десятичных цифр и заглавных букв латинского алфавита.

Определите в прилагаемом файле последовательность из максимального количества идущих подряд символов, среди которых ровно 35 букв S, начинающуюся чётной цифрой, не содержащую других чётных цифр, кроме первой. В ответе запишите число — количество символов в найденной последовательности.

with open('2427.txt', 'r') as file:
    data = file.readline()

evens = {'0', '2', '4', '6', '8'}
n = len(data)
left = 0
count_S = 0
max_len = 0

for right in range(n):
    # Если встретили четную цифру - начинаем новое окно
    if data[right] in evens:
        left = right
        count_S = 0

    # Учитываем буквы S
    if data[right] == 'S':
        count_S += 1

    # Проверяем условия для текущего окна
    if data[left] in evens:  # Начинается с четной цифры
        # Проверяем, что нет других четных цифр в окне
        has_other_evens = any(c in evens for c in data[left + 1:right + 1])

        if not has_other_evens and count_S == 35:
            current_len = right - left + 1
            if current_len > max_len:
                max_len = current_len

print(max_len)
Разберём это задание на бесплатном пробном занятии

Преподаватель покажет, как решать такие задачи, и подскажет, с чего начать подготовку. Группы до 8 человек, очно в Калининграде и онлайн.

Записаться на пробное занятие