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

№ 24006. Демоверсия

Текстовый файл состоит из цифр 0, 6, 7, 8, 9 и знаков арифметических операций «–» и «*» (вычитание и умножение).

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

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

import re

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

# Паттерн для определения числа (без ведущих 0)
num = r'(?:[6789][06789]*)'
# Поиск подстроки
pattern = rf'{num}(([-*]{num})*([-*]0)*)*'
matches = re.finditer(pattern, data)

answer = max([len(match.group()) for match in matches])
print(answer)
Разберём это задание на бесплатном пробном занятии

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

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