Новая Школа - онлайн-школа подготовки к ЕГЭ
При поддержке
Тренировки Пробники Статистика Карточки Учебник Об экзамене Учительская
  • Тренажёр заданий ЕГЭ
  • Тренажёр ЕГЭ по Информатике
  • Список заданий №12
  • Задание №12
  • Задание №91706 ЕГЭ Информатике

    Условие задания #91706

    №12 по КИМ

    На ленте в соседних ячейках записана последовательность из 1000 символов, включающая только нули и единицы. Ячейки справа и слева от последовательности заполнены пустыми символами «λ». В начальный момент времени головка расположена в ближайшей ячейке справа от последовательности.

    Программа работы исполнителя:

    После выполнения программы на ленте осталось ровно 605 нуля. Определите минимально возможное число нулей в исходной последовательности.

    Ответ

    Ответ:

    Решение

    s = ['l'] + ['1'] * 395 + ['0']*604 + ['1'] + ['l']
    print(f"Количество нулей в начальной строке: {s.count('0')}")
    p = len(s) - 1
    state='q0'
    table = {'l': {'q0': 'l,L,q1', 'q1': 'l,S,q1'},
             '0': {'q1': '1,L,q1'},
             '1': {'q1': '0,S,q1'}}
    step = {'L': 1, 'R': -1, 'S': 0}
    s[p], m, state = table[s[p]][state].split(',')
    while m != 'S':
        p -= step[m]
        s[p], m, state = table[s[p]][state].split(',')
    print(f"Количество нулей в конечной строке: {s.count('0')}")

    Видеоразбор:

    Понятно ли решение?

    Похожие задания

    Бесплатно

    Решай задачи ЕГЭ в приложении

    Скачивай наш Тренажер ЕГЭ на iPhone или Android и тренируйся в любое время и в любом месте!

    Саша — ассистент в телеграмме