Чтобы понять, в каких клетках Робот вернется в исходное положение после выполнения предложенного алгоритма, давайте проанализируем движения:
- Влево (L)
- Влево (L)
- Вверх (U)
- Вправо (R)
- Вправо (R)
- Вниз (D)
Теперь проанализируем изменения координат:
- Два шага влево (L) по оси X (x - 2)
- Один шаг вверх (U) по оси Y (y + 1)
- Два шага вправо (R) по оси X (x + 2)
- Один шаг вниз (D) по оси Y (y - 1)
В результирующем перемещении:
- Суммарное изменение по оси X: -2 + 2 = 0
- Суммарное изменение по оси Y: +1 - 1 = 0
Значит, Робот вернется в исходную клетку, если он начнет движение из любой клетки. Следовательно, для любой клетки удовлетворяются условия задачи.
Если поле состоит из n * m клеток, то количество клеток, с которых Робот вернется, будет равно n * m. Таким образом, для любого конечного игрового поля размером n * m, полученное количество равно общему количеству клеток на этом поле.
Если поле имеет конечные размеры, то просто укажите количество клеток. Если нужно конкретное число, не указанное в задании, предположим, что поле бесконечное, и ответ будет относиться к всем клеткам.
В общем случае число клеток, с которых Робот вернется в исходное положение, будет равно общему количеству клеток на данном поле.