6. Определение результатов работы алгоритма: #291628
Исполнитель Цапля действует на плоскости с декартовой системой координат.
Цапле был дан для исполнения следующий алгоритм:
Направо 180 Вперёд 5 Направо 90 Вперёд 50 Направо 90 Вперёд 5 Повтори 5 [Дуга 5, 5, 0, 180].
Определите, сколько точек с целочисленными координатами будут находиться внутри области, ограниченной линией, заданной данным алгоритмом. Точки на линии учитывать не следует.
В начальный момент Цапля находится в точке $(0;0)$ и направлена вверх.
После выполнения первых команд она перемещается следующим образом: $(0;0)\rightarrow(0;-5)\rightarrow(-50;-5)\rightarrow(-50;0)$.
Далее пять раз выполняется команда Дуга 5, 5, 0, 180. Каждая команда рисует верхнюю полуокружность радиуса $5$. Центры полуокружностей находятся в точках $(-45;0)$, $(-35;0)$, $(-25;0)$, $(-15;0)$, $(-5;0)$.
После выполнения пятой команды Цапля возвращается в точку $(0;0)$, поэтому линия замыкается.
Сначала посчитаем целочисленные точки ниже оси абсцисс. Координата $y$ может принимать значения $-4$, $-3$, $-2$, $-1$.
Для каждого из этих значений координата $x$ принимает значения от $-49$ до $-1$, то есть имеется $-1-(-49)+1=49$ точек. Всего: $4\cdot49=196$.
Теперь посчитаем точки, находящиеся под полуокружностями при $y\geq0$.
Для одной полуокружности радиуса $5$:
- при $y=0$ подходят $9$ значений $x$;
- при $y=1$ подходят $9$ значений $x$;
- при $y=2$ подходят $9$ значений $x$;
- при $y=3$ подходят $7$ значений $x$;
- при $y=4$ подходят $5$ значений $x$.
Точки на дуге и в концах полуокружностей не учитываются. Под одной полуокружностью находится $9+9+9+7+5=39$ целочисленных точек.
Всего полуокружностей пять: $5\cdot39=195$.
Общее количество точек внутри области: $196+195=391$.