Текстовый файл состоит из цифр тринадцатеричной системы счисления и знаков операций «+» и «*».
Определите максимальное количество символов в непрерывной последовательности, которая является корректным арифметическим выражением с целыми неотрицательными числами, записанными в восьмеричной системе счисления.
В этом выражении никакие два знака арифметических операций не стоят рядом, в записи чисел отсутствуют незначащие (ведущие) нули и число 0 не имеет знака.
В ответе укажите количество символов в найденном выражении.
from re import *
s = open(’24_2.txt’).readline()
# выстраиваем маску подходящего числа
# либо это число, в котором первая цифра от 1 до 7, а последующие от 0 до 7
# либо это число 0
num = r’([1-7][0-7]*|0)’
# выстраиваем маску подходящей подстроки
# между числами может быть ровно один знак
reg = rf’{num}([*+]{num})*’
# определяем максимальную длину подпоследовательности
m = max([x.group() for x in finditer(reg,s)],key = len)
print(len(m))
Ответ: 18