На этом форуме отвечают на конкретные вопросы. Фраза «я не понимаю, как решать» — это не вопрос. На вопрос «как решить задачу №X» вас отошлют к материалам сайта kpolyakov.spb.ru. За бессвязный поток слов и неспособность формулировать свои мысли — бан.

Если у вас не сходится ответ на какую-то задачу, пожалуйста сразу представляйте свое «правильное» решение.
Программы "заворачивайте" в тэг [pre2]...[/pre2], при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "[i]" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.

Для регистрации на форуме щелкните по ссылке «Вход-регистрация» вверху страницы. В открывшееся окошко «ник» введите свою фамилию на русском языке (например, Иванов). В окошко «пароль» введите придуманный вами пароль, состоящий из латинских букв и цифр. Поставьте галочку в окошке «зарегистрироваться, я новый участник» и нажмите кнопку «ОК».

АвторСообщение



Сообщение: 1
ссылка на сообщение  Отправлено: 05.03.24 22:53. Заголовок: 24-287 сайт Полякова


Добрый день! Задача из сайта Полякова 24-287
Текстовый файл 24-280.txt состоит не более чем из 106 символов и содержит только заглавные буквы латинского алфавита. Определите максимальное количество идущих подряд символов, среди которых буквы X и Y встречаются ровно по одному разу, а буква A не встречается совсем.

Подскажите, почему эта программа дает неверный ответ? Когда делаю на своих примерах -все верно((((

f=open('24-280.txt')
s=f.readline()
s=s.split('A')
m=0
for i in range(0,len(s)):
if s.count('X')==1 and s.count('Y')==1:
if len(s)>m:
m=len(s)
print(m)

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 3 [только новые]







Сообщение: 272
ссылка на сообщение  Отправлено: 06.03.24 06:40. Заголовок: f=open('c:/24-2..


 
f=open('c:/24-280.txt')
s=f.readline()
s=s.split('A')
m=0
for c in s:
if c.count('X')==1 and c.count('Y')==1:
if len(c)>m:
m =len(c)

print(m)


Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 2
ссылка на сообщение  Отправлено: 06.03.24 09:39. Заголовок: Да, конечно, я это и..


Да, конечно, я это и имею ввиду, просто отступы здесь съехали. Этот вариант решения дает неверный ответ - 106, а верный ответ: 135.

Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 273
ссылка на сообщение  Отправлено: 06.03.24 11:11. Заголовок: Вы не учитываете, чт..


Вы не учитываете, что после split вы получаете строки, не содержащие А, но содержащие по несколько X и Y. Ответом может случит подстрока такой строки.
К примеру, одна из строк имеет вид '00000000000000x000000000000000000y0000000000000000000000000x'. Вы ее отбракуете, а в ней есть нужная подстрока '00000000000000x000000000000000000y0000000000000000000000000'

 
s = open('c:/24-280.txt').readline()
l=[0]
for i in range(len(s)):
for j in range(i+max(l),len(s)):
ss=s[ i:j]
if 'A' not in ss and ss.count('X')==1 and ss.count('Y')==1 :
if len(ss)>max(l):print(max(l),ss)
l.append(len(ss))
elif 'A' in ss or ss.count('X')>1 or ss.count('Y')>1: break
print(max(l))


Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 1705
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет