Я не слишком понял, что именно означают эти команды внизу. Следовало описать их подробно, так как вряд ли кто открывал это и пробовал. Или дать ссылку на возможность самому пройти эту задачу.
Если чёрные клетки - смерть и перекрасить их нельзя, то стоит идти только по дорожке.
Когда наступишь на фиолетовую метку, поменять flag на обратный.
Если flag = 0 (изначальному значению) и ты на синей клетке, идёшь прямо.
Если ты на фиолетовый, flag = 1
Если ты на синей клетки и flag = 1: то переменно поворачиваешь:
сначала налево, потом направо
Если бы это был язык программирования, прибавлял бы к переменной +1 и проверял условие a % 2 == 1 или a % 2 == 0. И в зависимости от этого действовал.
Здесь очевидная идея: после фиолетовой клетки меняется принцип работы