Для решения этой задачи нам потребуется алгоритм для Робота, который будет закрашивать клетки, расположенные непосредственно над горизонтальными стенами. Исходя из представленного изображения, нужно закрасить левую и правую клетки, находящиеся сразу над горизонтальной стеной.
Предположим, что у нас есть команды для Робота:
вверх - перемещение на одну клетку вверхвниз - перемещение на одну клетку внизвлево - перемещение на одну клетку влевовправо - перемещение на одну клетку вправозакрасить - закрасить текущую клеткустена_справа - условие: справа стена?стена_слева - условие: слева стена?стена_сверху - условие: сверху стена?стена_снизу - условие: снизу стена?Тогда алгоритм может выглядеть следующим образом:
Пример алгоритма в псевдокоде:
ПОКА не стена_справа ДЕЛАТЬ
вправо
КОНЕЦ ПОКА
вверх
закрасить
ПОКА не стена_слева ДЕЛАТЬ
влево
КОНЕЦ ПОКА
вверх
закрасить
Важно: Этот алгоритм предполагает, что Робот начинает движение с нижней линии сетки.