Текстовый файл состоит из десятичных цифр и заглавных букв латинского алфавита. Определите в прилагаемом файле максимальное количество идущих подряд символов, оканчивающихся подстрокой DOG, среди которых цифра 2 содержится ровно 300 раз, а подстрока DOG встречается не менее 3 раз. В ответе запишите число — количество символов в найденной последовательности. Для выполнения этого задания следует написать программу.
Решение:
Решение на Python:
a = open('E:/10/files (2)/ege/ZADANIE-24/24var04.txt').readline()
mx = 0
n = len(a)
ends = []
for i in range(2, n):
if a[i-2] == 'D' and a[i-1] == 'O' and a[i] == 'G':
ends.append(i)
for end in ends:
count_2 = 0
count_dog = 0
for start in range(end, -1, -1):
if a[start] == '2':
count_2 += 1
if count_2 > 300:
break
if start <= end-2 and a[start] == 'D' and a[start+1] == 'O' and a[start+2] == 'G':
count_dog += 1
if count_2 == 300 and count_dog >= 3:
mx = max(mx, end-start+1)
break
print(mx)
К значению из кода добавим 3
Ответ: 11487
Ответ:
11487