Алгоритм решения задания 14. Часть 1
Учимся решать 15 задания первого типа
Читать
Текстовый файл состоит из десятичных цифр и заглавных букв латинского алфавита.
Определите в прилагаемом файле последовательность из максимального количества идущих подряд символов, среди которых ровно 35 букв S, начинающуюся чётной цифрой, не содержащую других чётных цифр, кроме первой. В ответе запишите число — количество символов в найденной последовательности.
Правильный ответ:
292
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)
