Алгоритм решения задания 14. Часть 1
Учимся решать 15 задания первого типа
Читать
Текстовый файл состоит из десятичных цифр и заглавных букв латинского алфавита.
Определите в прилагаемом файле максимальное количество идущих подряд символов, среди которых буква F встречается ровно 76 раз, чётная цифра встречается ровно один раз, искомая последовательность начинается с этой единственной чётной цифры. В ответе запишите число — количество символов в найденной последовательности.
with open('2432.txt', 'r') as file:
data = file.readline()
# заменяем все чётные цифры на 0
data = data.translate(str.maketrans('2468', '0000'))
max_len = 0
for seg in data.split('0'):
if seg.count('F') >= 76:
# находим позицию 76-й F
pos = [i for i, c in enumerate(seg) if c == 'F'][75]
max_len = max(max_len, pos + 2) # +1 за индекс, +1 за чётную цифру
print(max_len)
#=== Регулярные выражения ===#
import re
with open('2432.txt') as f:
s = f.readline()
ans = 0
for m in re.finditer(r'[02468](?:[^F02468]*F){76}[^F02468]*', s):
ans = max(ans, len(m.group()))
print(ans)
