Загрузка...

Привет всем, решаю 24 номер ЕГЭ по информатике, не знаю в чем ошибка. Подскажите что не так в коде ?

Тема в разделе Учеба создана пользователем cool_booll 19 июн 2021. 134 просмотра

  1. cool_booll
    cool_booll Автор темы 19 июн 2021 0 19 июн 2021
  2. givency
    givency 20 июн 2021 /way before you came along I was doing alright/ 555 20 окт 2018
    Ctrl+F и смотришь след символ
     
  3. Goldian
    Goldian 22 июн 2021 2 27 мар 2021
    Написал код, у тебя ошибка, в условии код сверяет один символ с тремя, что не может быть.
    :smile:
    Python

    with open('24_demo.txt', 'r') as f:
    s = f.read()
    total = 0
    # находим первое вхождение XYZ
    j = s.find('XYZ')
    k = 0
    # цикл от первого вхождения XYZ
    while j < len(s):
    # если три следующих символа - XYZ,
    # то счетчик увеличиваем на 3 и сдвигаем
    # индекс строки на 2 + 1 (в конце цикла)
    if s[j: j + 3] == 'XYZ':
    k += 3
    j += 2
    # если нет в следующей 3 символах XYZ
    # наше k должно быть положительно, потому что строка
    # начинается только с полных XYZ
    elif k > 0:
    # проверяем наличие набора XY
    if s[j: j + 2] == 'XY':
    k += 2
    j += 1
    # иначе проверяем наличие X
    elif s[j] == 'X':
    k += 1
    # так как полные наборы XYZ кончились
    # проверяем максимум и обнуляем счетчик
    total = max(k, total)
    k = 0
    j += 1 # начинаем следующий шаг
    print(total)
     
Top
Загрузка...