Время работы исполнителя делится на дискретные такты (шаги). В начальный момент времени головка находится в начальном состоянии q0. На каждом такте головка обозревает одну ячейку ленты, называемую текущей ячейкой. За один такт головка исполнителя может переместиться в ячейку справа или слева от текущей, не меняя находящийся в ней символ, и/или заменить символ в текущей ячейке без сдвига в соседнюю ячейку. После каждого такта головка переходит в новое состояние или остаётся в прежнем состоянии. Если пара «символ состояние» невозможна, то клетка для команды остаётся пустой. Каждая команда состоит из трёх элементов, разделённых запятыми: первый элемент записываемый в текущую ячейку символ алфавита (может совпадать с тем, который там уже записан). Сдвиг происходит после записи символа в текущую ячейку. Третий элемент новое состояние головки после выполнения команды. Приведём пример выполнения программы, заданной таблично. В начальный момент времени головка находится на неизвестном ненулевом расстоянии справа от самого правого символа «1». Выполните задание. На ленте в соседних ячейках записана последовательность из 1000 символов, включающая только нули и единицы. В начальный момент времени головка расположена в ближайшей ячейке справа от последовательности. После выполнения программы на ленте осталось ровно 343 нуля. Определите максимально возможное число нулей в исходной последовательности
Текст распознан с изображения задания. Формулы, таблицы и рисунки смотрите на картинке ниже.
