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

Текстовый файл 24_4.txt состоит из десятичных цифр, а так же знака точки и запятой.

Определите максимальное количество символов в непрерывной последовательности, которая является выражением вида: четное число, запятая, нечетное число (например, 12,13). В записи чисел отсутствуют незначащие (ведущие) нули.

В ответе укажите найденную подпоследовательность.

import re
f = open("24_4.txt")
s = f.readline()
# 1. (0|[1-9]d*[02468]):
# - 0: число 0 (единственное чётное число, которое может начинаться с нуля).
# - [1-9]d*[02468]: [1-9]: первая цифра числа (от 1 до 9, чтобы исключить ведущие нули).
# d*: любое количество цифр (включая ноль). [02468]: последняя цифра должна быть чётной.
# 2. ,: запятая, разделяющая два числа.
# 3. (0|[1-9]d*[13579]): [1-9]d*[13579]: [1-9]: первая цифра числа (от 1 до 9, чтобы исключить ведущие нули).
# d*: любое количество цифр (включая ноль). [13579]: последняя цифра должна быть нечётной.
pattern = re.compile(
    r"(0|[1-9]d*[02468]),([1-9]d*[13579])"
)
matches = pattern.finditer(s)
max_len = 0
for match in matches:
    substring = match.group()
    max_len = max(len(substring), max_len)
print(max_len)

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