Вопрос:

Робот находится в одной из клеток квадрата 2х2. В квадрате есть одна горизонтальная стенка шириной в одну клетку, где именно — неизвестно. Роботу надо оказаться в правой верхней клетке квадрата.

Фотография

Ответ ассистента

**Ответ:** ```python while not wall_from_up(): move_up() while not wall_from_right(): move_right() while not wall_from_up(): move_up() ``` **Решение:** Чтобы Робот гарантированно оказался в правой верхней клетке квадрата $2 \times 2$, учитывая наличие одной горизонтальной стенки неизвестного расположения, мы можем использовать следующий алгоритм: 1. Сначала мы пытаемся пройти максимально вверх до упора (внешней границы или той самой стенки): `while not wall_from_up(): move_up()`. 2. Затем мы движемся до упора вправо, чтобы прижаться к правой границе квадрата: `while not wall_from_right(): move_right()`. 3. Если на первом шаге нам помешала внутренняя стенка, то, оказавшись справа, мы можем её обойти или убедиться, что мы в верхнем ряду, снова пройдя вверх до упора: `while not wall_from_up(): move_up()`. Так как квадрат всего $2 \times 2$, этих действий достаточно, чтобы Робот оказался в угловой клетке $(2; 2)$.

Другие решения

Что ещё задавали пользователи