Задача состоит в том, чтобы закрасить клетки, которые находятся внутри прямоугольника, прилегая к правой и нижней стенам. Робот изначально находится в левом верхнем углу.
Примерный алгоритм (псевдокод):
Вправо (повторять, пока не упрется в правую стену)Вниз (повторять, пока не упрется в нижнюю стену)ЗакраситьВлево (повторять, пока не будет достигнута клетка, граничащая с левой стеной и находящаяся на той же высоте, что и нижняя стена).ЗакраситьОбъяснение:
Робот движется к правой стене, затем спускается по ней, закрашивая клетки. Затем он движется по нижней стене влево, закрашивая клетки. Таким образом, будут закрашены все клетки, которые имеют общую границу с правой стеной (кроме самой правой стены, если она не является внутренней) и с нижней стеной (кроме самой нижней стены, если она не является внутренней).
Уточнение:
Поскольку стены имеют неизвестную длину, мы используем команды движения до упора в стену. Алгоритм предполагает, что Робот может определить, когда он уперся в стену.