Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/117: Рейтинг темы: голосов - 117, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 09.03.2021
Сообщений: 3

Определить максимальное количество идущих подряд символов, расположенных в алфавитном порядке

03.04.2021, 09:17. Показов 26176. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вообще 0 мыслей о том как это решить, помогите пожалуйста.

Текстовый файл состоит не более чем из 106 символов x, y, z.
Определите максимальное количество идущих подряд символов, расположенных в алфавитном порядке(возможно с повторением символов).
Ответ: 15

24 варианты 1-5.txt.zip
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.04.2021, 09:17
Ответы с готовыми решениями:

Определить максимальное количество идущих подряд символов A
Всем доброго времени суток! Хотел бы попросить помощи у знатоков по С++, как сделать следующее задание... Текстовый файл состоит не...

Определить максимальное количество одинаковых символов, идущих подряд
Ввести строку с клавиатуры. Определить максимальное количество одинаковых символов, идущих подряд. срочно нужно до 6 числа.помогите

Символьный массив: определить максимальное количество одинаковых символов, идущих подряд
Для решения задачи сначала используйте символьный массив как строку, а затем напишите решение с использованием типа string. Все результаты...

9
 Аватар для codcw
815 / 527 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
03.04.2021, 09:35
Лучший ответ Сообщение было отмечено hobik как решение

Решение

hobik,
Python
1
2
3
4
5
6
7
8
9
10
s='yxyxyyxzxzyxxxxxxxxxxyyyzzxyyxzyxzyxzyxzyxzyxzyxzyzx'
b=0
m=0
for i in range(len(s)-1):
    if s[i]<=s[i+1]:
        b+=1
    elif m<b:
        m=b
        b=0
print(m)
как-то так, наверное
1
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
03.04.2021, 09:50
hobik, как вариант
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
st = iter(input())
a = next(st)
c = d = 1
while True:
    try:
        b = a
        a = next(st)
        if a >= b:
            c += 1
        else:
            d = max(c, d)
            c = 1
    except:
        break
print(max(c, d))
2
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
03.04.2021, 09:52

Не по теме:

Цитата Сообщение от hobik Посмотреть сообщение
Не смог загрузить файл, тк он превышает норму.
Для этого придумали такую мощную вещь, как архиватор.

0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38195 / 21128 / 4309
Регистрация: 12.02.2012
Сообщений: 34,733
Записей в блоге: 14
03.04.2021, 09:53
codcw, b нужно начинать с 1. И после выхода из цикла проверить b (если конец строки - годная последовательность, то она не учтется)
1
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
03.04.2021, 09:58
Лучший ответ Сообщение было отмечено hobik как решение

Решение

Ну и мои стандартные 5 копеек

Python
1
2
3
4
5
import re
 
with open('24 варианты 1-5.txt', 'r') as f:
    text = f.read()
    print(max(map(len, re.findall(r'X*Y*Z*', text))))
Code
1
15
3
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
03.04.2021, 10:04
iSmokeJC, А если любые символы в лексиграфически неубывающем порядке?

Не по теме:

Некоторые адепты "re" утверждают, что регуляркой можно заменить чуть ли не все операторы в кодах. Ну почти все...

2
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
03.04.2021, 10:17
Цитата Сообщение от Gdez Посмотреть сообщение
регуляркой можно заменить чуть ли не все операторы в кодах
В общем смысле, да. Регулярка - это конечный автомат.
На деле же это будет монструозная, практически непонимаемая и неподдерживаемая регулярка
С виду как brainf_ck, только еще страшнее
Цитата Сообщение от Gdez Посмотреть сообщение
А если любые символы в лексиграфически неубывающем порядке?
Ну, я еще не в той весовой категории
Впрочем...
Python
1
2
    regex = ''.join([f'*{chr(i)}' for i in range(65, 91)])
    print(max(map(len, re.findall(regex, f.read(), re.IGNORECASE))))
Добавлено через 3 минуты
А, если вообще любые - диапазон по всей аски (ну окромя спецсимволов), и флаг убрать

Добавлено через 34 секунды
Но это костыль. Надо подумать
1
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
03.04.2021, 10:42
iSmokeJC, получается в подобных задачах в том числе можно, пройдясь по последовательности, составить логический массив; потом сжать его в строку и через регулярку найти максимальную последовательность из 1.
Спасибо
2
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
03.04.2021, 12:21
Цитата Сообщение от Gdez Посмотреть сообщение
Некоторые адепты "re" утверждают, что регуляркой можно заменить чуть ли не все операторы в кодах. Ну почти все...
Только почти, т. к. регулярки - не Тьюринг-полные. Вот BF да, но там заманаешься реализовывать все основные алгоритмы: от условий и циклов до умножения и деления + нельзя в основной интерпретации объявлять функции.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.04.2021, 12:21
Помогаю со студенческими работами здесь

Дана строка символов. определить максимальное количество идущих подряд одинаковых слов в строке.
Дана строка символов. определить максимальное количество идущих подряд одинаковых слов в строке. Пожалуйста, помогите решить!!!

Определить максимальное количество идущих подряд символов среди которых каждые два соседних различны
Имеется код на Pascal: var k, max: integer; c1, c2: char; f: text; begin assign(f,'C:\24.txt'); reset(f); ...

Написать функцию, которая возвращает наибольшую по длине подстроку подряд идущих символов в алфавитном порядке
Написать функцию, которая возвращает наибольшую по длине подстроку подряд идущих символов, расставленных в алфавитном порядке Например:...

Определите максимальное количество идущих подряд пар символов
Дана строка из согласных P, Q, X, Z и гласных E, U букв. Определите максимальное количество идущих подряд пар символов вида согласная...

Определите максимальное количество идущих подряд троек символов
Помогите найти ошибку, выдает 3, а надо 16 Текстовый файл 24-197.txt содержит строку из заглавных латинских букв X, Y и Z, всего не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Вывод данных через динамический список в справочнике
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru