Ловушки многофазных программ
Первая: посчитать состояния и решить, что программа сложная. Число состояний говорит о числе фаз, а не о сложности. Три фазы «доехал — дописал — встал» проще, чем два состояния с хитрым условием.
Вторая: пропустить, что на λ может стоять не λ. В разобранной задаче именно там пишется 0 — и лента становится длиннее.
Третья: забыть, что клетка пустая не по ошибке. Если для пары «состояние — символ» команды нет, значит при работе она не встретится. Это подсказка, а не пробел.