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

Текстовый файл 24_5.txt состоит из символов, обозначающих знаки «+», «*» и десятичных цифр.

Определите максимальное значение, которое является результатом вычисления непрерывной последовательности, являющейся корректным арифметическим выражением с целыми неотрицательными числами, в котором отсутствует операция сложения.

В этом выражении никакие два знака арифметических операций не стоят рядом. В записи чисел отсутствуют незначащие (ведущие) нули.

В ответе укажите последние 10 цифр в найденном значении выражения.

import re
f = open("24_5.txt")
s = f.readline()
# Одно или более цифр (целое неотрицательное число)
# Группа для оператора и следующего числа
# Оператор умножения
# Следующее число, не начинающееся с 0
# Повторение группы (оператор + число) 0 или более раз
pattern = re.compile(
    r"([1-9]d+)(?:*([1-9]d*))*"
)
matches = pattern.finditer(s)
max_value = 0
for match in matches:
    substring = match.group()  # Получаем найденное выражение
    value = eval(substring)
    max_value = max(max_value, value)
print(str(max_value)[-10:])

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