Умение создавать собственные программы (10–20 строк) для обработки символьной информации · 10 заданий
- Задание №24№24
Текстовый файл состоит из заглавных букв латинского алфавита Q, R, W и цифр 1, 2, 4. Определите в прилагаемом файле максимальное количество идущих под…
Обработка символьных данных
- Задание №24№24
Текстовый файл состоит из символов A, C, D, F и O. Определите максимальное количество идущих подряд пар символов вида согласная + гласная в прилагаемо…
Обработка символьных данных
- Задание №24№24
Текстовый файл состоит из символов P, Q, R и S. Определите максимальное количество идущих подряд символов в прилагаемом файле, среди которых нет идущи…
Обработка символьных данных
- Задание №24№24
Текстовый файл состоит не более чем из 10⁶ символов X, Y и Z. Определите максимальное количество идущих подряд символов, среди которых каждые два сосе…
Обработка символьных данных
- Задание №24№24
Текстовый файл состоит не более чем из 10⁶ символов X, Y и Z. Определите максимальное количество идущих подряд символов, символ Z встречается не более…
Обработка символьных данных
- Задание №24№24
Текстовый файл состоит не более чем из 10⁶ символов X, Y и Z. Определите максимальное количество идущих подряд символов, среди которых нет символа Z.…
Обработка символьных данных
- Задание №24№24
Текстовый файл состоит не более чем из 10⁶ символов X, Y и Z. Определите максимальное количество идущих подряд символов, расположенных в обратном алфа…
Обработка символьных данных
- Задание №24№24
Текстовый файл состоит из символов T, U, V, W, X, Y и Z. Определите в прилагаемом файле максимальное количество идущих подряд символов (длину непрерыв…
Обработка символьных данных
- Задание №24№24
Текстовый файл состоит из заглавных букв латинского алфавита A, B, C, D, E и F. Определите в прилагаемом файле максимальное количество идущих подряд с…
Обработка символьных данных
- Задание №24№24
Задание выполняется с использованием прилагаемых файлов. Текстовый файл состоит из десятичных цифр и заглавных букв латинского алфавита. Определите в…
Обработка символьных данных
Текстовый файл состоит из символов A, C, D, F и O. Определите максимальное количество идущих подряд пар символов вида согласная + гласная в прилагаемом файле. Для выполнения этого задания следует написать программу
Правильный ответ
95
Пояснение
Решение:
Из букв A, C, D, F, O гласные — это A и O, согласные — C, D, F. Нас интересует самая длинная цепочка вида «согласная+гласная», «согласная+гласная», … — то есть участок чётной длины, разбитый на пары, каждая из которых состоит из согласной и следующей за ней гласной. В ответе нужно указать количество таких пар.
Идём по файлу с позиции i. Если s[i] — согласная, а s[i+1] — гласная, то это очередная пара цепочки: увеличиваем счётчик и перескакиваем через оба символа (i += 2). Иначе цепочка обрывается: обнуляем счётчик и сдвигаемся на один символ.
s = open('59133_24.txt').read().strip()
glas = 'AO'
mx = cur = 0
i = 0
while i < len(s) - 1:
if s[i] not in glas and s[i + 1] in glas:
cur += 1
i += 2
else:
cur = 0
i += 1
if cur > mx:
mx = cur
print(mx)
Сдвиг на 1 при обрыве не теряет решений: после удачной пары следующий символ — гласная, и новая цепочка с него начаться не может.
Программа выводит 95: максимальная цепочка состоит из 95 пар (190 символов подряд).
Ответ: 95