(А. Кабанов) Текстовый файл содержит строку из заглавных букв A, B, C, D, E, F, всего не более чем из \(10^6\) символов. DD-подстроками назовём последовательности символов A, B, C, E, F, ограниченные символами D (граничные символы входят в подстроку). Определите минимальную длину DD-подстроки. Подстроки, состоящие из двух символов, не учитывать.
Решение:
Python
s = open('3527.txt').readline().strip()
p1, p2 = 0, len(s) - 1
while s[p1] != 'D':
p1 += 1
while s[p2] != 'D':
p2 -= 1
s = s[p1:p2 + 1].replace('D', ' ')
a = [len(x) for x in s.split()]
print(min(a) + 2)
Python. Решение с помощью регулярных выражений
from re import finditer
s = open('3527.txt').readline().strip()
arr = [len(x.group(1)) for x in finditer(r'(?=(D[ABCEF]+D))', s)]
print(min(arr))
Ответ: \(139\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене