Решение: Пересечение фигур Черепахи
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова направлена вдоль положительного направления оси ординат, хвост опущен.
При опущенном хвосте Черепаха оставляет на поле след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существуют команды: «Поднять хвост», «Опустить хвост», «Вперёд n», «Назад n», «Направо m» и «Налево m», где n и m — целые числа. Команды «Вперёд» и «Назад» перемещают Черепаху, а команды «Направо» и «Налево» изменяют направление её движения на заданное число градусов. Запись «Повтори k [Команда1 Команда2 … КомандаS]» означает, что последовательность из S команд повторится k раз.
Черепахе был дан для исполнения следующий алгоритм:
Повтори 6 [Вперёд 24 Направо 90 Вперёд 30 Направо 90]
Поднять хвост
Вперёд 2 Направо 90 Вперёд 10 Налево 90
Опустить хвост
Повтори 6 [Вперёд 75 Направо 90 Вперёд 71 Направо 90]
Определите, сколько точек с целочисленными координатами находятся внутри области пересечения фигур, ограниченных заданными алгоритмом линиями, включая точки на границах этого пересечения.
Решение по шагам
5 шаговПервые шесть повторений образуют прямоугольник: из начала координат Черепаха движется вверх на 24, затем вправо на 30.
$$0 \leq x \leq 30,\quad 0 \leq y \leq 24$$После перемещения с поднятым хвостом Черепаха оказывается в точке $(10; 2)$ и снова направлена вверх.
Следующие шесть повторений образуют второй прямоугольник шириной 71 и высотой 75.
$$10 \leq x \leq 81,\quad 2 \leq y \leq 77$$Пересечение прямоугольников имеет координатные диапазоны:
$$10 \leq x \leq 30,\quad 2 \leq y \leq 24$$Количество целочисленных значений координаты $x$ равно $30-10+1=21$, а координаты $y$ — $24-2+1=23$.
$$21 \cdot 23 = 483$$Где здесь ошибаются
Не учитывать точки на границах пересечения.
Считать длину отрезка вместо количества целочисленных точек и не прибавить 1.
Ошибиться в координатах начала второго прямоугольника.