№ 7016 (Уровень: Базовый)
(Д. Статный) Текстовый файл состоит из букв латинского алфавита и десятичных цифр. Определите максимальную длину подстроки, которая ограничена с одной стороны буквой A, а с другой - D и не содержит других букв A и D внутри.
Файлы к заданию: 24.txt
Комментарии к коду программы:
s = open('24.txt').readline()
- Читаем всю строку из файла '24.txt' и присваиваем ее значение переменной 's'.for x in '0123456789QWERTYUIOPSFGHJKLZXCVBNM':
- Используем цикл 'for' для перебора каждого символа 'x' в строке '0123456789QWERTYUIOPSFGHJKLZXCVBNM'.s = s.replace(x, ' *')
-* Заменяем каждое вхождение символа 'x' в строке 's' на символ ' ' (пробел).M = [max(len(i) - i.index('D'), i.index('D')) for i in s.split('A') if 'D' in i]
- Создаем список 'M', в котором каждый элемент вычисляется как максимальное значение между разностью длины строки 'i' и индекса символа 'D' и индексом символа 'D', для каждой разделенной подстроки 'i' из строки 's', если в подстроке 'i' содержится символ 'D'.print(max(M) + 1)
- Выводим на экран максимальное значение из списка 'M' плюс 1.s = open('24.txt').readline()
for x in '0123456789QWERTYUIOPSFGHJKLZXCVBNM':
s = s.replace(x, '*')
M = [max(len(i) - i.index('D'), i.index('D')) for i in s.split('A') if 'D' in i]
print(max(M) + 1)