Текстовый файл состоит из десятичных цифр и заглавных букв латинского алфавита A, B, C, D, E и F.
Определите в прилагаемом файле максимальное количество идущих подряд символов, среди которых пара символов BC (в указанном порядке) встречается ровно 190 раз.
В ответе запишите число — количество символов в найденной последовательности.
Для выполнения этого задания следует написать программу.
Приведём решение на языке Python.
f=open('1_24.txt')
s=f.readline()
f.close()
s=s.split('BC')
print(s)
max_len=0
for i in range(len(s)-190):
st='BC'.join(s[i:i+191])
if max_len < len(st):
max_len=len(st)
print(max_len + 2)
Ответ: 2287.
Приведём решение на языке Python.
s=open('24.txt').readline()
k=190
ndx=[-1]+[i for i in range(len(s)) if s[i:i+2]=='BC']+[len(s)-1]
d=[ndx[i+k+1]-ndx[i] for i in range(len(ndx)-k-1)]
print(max(d))
Приведём решение Сергея Донец на языке PascalABC.NET.
begin
var t:=ReadAllText('24_89761.txt');
t:=t.Replace('BC','B C');
var d:=t.Split.Select(s->s.length);
d.Nwise(190+1).Max(s->s.Sum).Print;
end.

