Для решения этой задачи важно понять, сколько участков робот будет убирать с учётом особенностей движения из-за полок, расположенных змейкой.
Рассмотрим следующие шаги:
Определим общее количество секций. Поле имеет размерности w (ширина) на h (высота), следовательно, общее количество секций равно \( w \times h \).
Учитываем полки. Каждый раз, когда робот движется в соседнюю секцию, он проходит через всю ширину, а затем возвращается на тот же уровень, что увеличивает количество секторов, которые он будет убирать. Полки заставляют робота проходить через некоторые секции дважды.
В зависимости от заданного примера и схемы, количество секций, через которые робот проходит дважды, может зависеть от истинных значений w и h. Например, если у нас высота h равна 5 и ширина w равна 6, необходимо учитывать, что в каждом уровне высоты существует определённая последовательность, которая приводит к двойному счёту некоторых участков.
Формула для общего времени, которое робот будет тратить на уборку, в таком случае может выглядеть следующим образом:
\[ T = w \cdot h + (h - 1) \cdot (w - 2) \]
где:
- \( w \cdot h \) – это общее количество секций,
- \( (h - 1) \cdot (w - 2) \) – это количество секций, через которые робот проходит дважды.
Таким образом, окончательное выражение будет:
\[ T = w \cdot h + (h - 1) \cdot (w - 2) \]
Это выражение даст вам правильный ответ для любых натуральных значений w и h, больших 2. Например, для w = 6 и h = 5:
\[ T = 6 \cdot 5 + (5 - 1) \cdot (6 - 2) = 30 + 4 \cdot 4 = 30 + 16 = 46 \]
Попробуйте подставлять разные значения w и h, чтобы проверить правильность формулы.
