Текстовый файл состоит из цифр 6, 7, 8, 9, 0 и знаков арифметических операций «−» и «+» (вычитание и сложение).
Определите максимальное количество символов в непрерывной последовательности, которая является корректным арифметическим выражением с целыми неотрицательными числами. В этом выражении никакие два знака арифметических операций не стоят рядом, в записи чисел отсутствуют незначащие (ведущие) нули и число 0 не имеет знака.
В ответе укажите количество символов.
Приведём решение на языке Python.
import re
text = open('24_2.txt').read()
matches = re.findall(r'(?:[1-9][0-9]*|0)(?:[-+](?:[1-9][0-9]*|0))*', text)
print(max(map(len, matches)))
Ответ: 145.
Приведём решение Бориса Савельева на языке Python.
f=open('24_2.txt').readline().replace('7','6').replace('8','6').replace('9','6').replace('--',' ').replace('+-',' ').replace('-+',' ').replace('++',' ').replace(' +',' ').replace(' -',' ').replace('- ',' ').replace('+ ',' ').replace('+06','+0 6').replace('-06','-0 6').split(' ')
maxi=0
for i in range (0,len(f)):
fl=0
k=0
for j in range (0,len(f[i])):
if f[i][j]=='0' and fl==0:
k+=1
else:
fl=1
break
f[i]=f[i][k:]
maxi=max(len(f[i]),maxi)
print(maxi)

