На этом форуме отвечают на конкретные вопросы. Фраза «я не понимаю, как решать» — это не вопрос. На вопрос «как решить задачу №X» вас отошлют к материалам сайта kpolyakov.spb.ru. За бессвязный поток слов и неспособность формулировать свои мысли — бан.
Если у вас не сходится ответ на какую-то задачу, пожалуйста сразу представляйте свое «правильное» решение.
Программы "заворачивайте" в тэг [pre2]...[/pre2], при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "[i]" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.
Для регистрации на форуме щелкните по ссылке «Вход-регистрация» вверху страницы. В открывшееся окошко «ник» введите свою фамилию на русском языке (например, Иванов). В окошко «пароль» введите придуманный вами пароль, состоящий из латинских букв и цифр. Поставьте галочку в окошке «зарегистрироваться, я новый участник» и нажмите кнопку «ОК».
Отправлено: 04.01.26 13:25. Заголовок: Тема 24 задача 8704 Неверный ответ
Так как мой ответ 645835 очень сильно отличается от ответа на сайте, я посмотрела предложенное решение и обнаружила, что оно выдается для строки содержащей 1090 слов с буквой Q, а не 12000, как сказано в условии. Возможно опечатка в условии. Моё решение:
s = open('24-367.txt').readline().strip() ans = len(s) K = 12000 d = [] p, v = '', 0 for i in range(1, len(s)): if s[ i - 1] == '.' and s[ i] != '.': p = s[ i] v = i - 1 elif s[i - 1] != '.' and s[ i] != '.': p += s[ i] elif s[i - 1] != '.' and s[ i] == '.': if 'Q' in p: d.append(v) p = '' if len(d) >= K: t = len(d) if i - d[t - K] < ans: ans = i - d[t - K] print(ans + 1)
Все даты в формате GMT
3 час. Хитов сегодня: 83
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет