На самом деле он ходит по равностороннему треугольнику со стороной 56. Все ягоды на этих сторонах раздавлены, поэтому нас интересуют только точки строго внутри треугольника.
Определить количество целых чисел внутри треугольника можно разными способами. Например, нарисовать и посчитать или написать программу, которая это сделает за вас.
1️⃣ Распишем условие:
Треугольник образован тремя прямыми — осью ординат и двумя наклонными, одна из которых проходит через начало координат, а вторая через точку (0, 56).
Углы наклона обеих прямых нам известны — 30°, только одна имеет положительный коэффициент, другая — отрицательный.
Если рассматривать нижний прямоугольный треугольник, то, зная его гипотенузу (56) и левый угол (30°), можно найти катет, лежащий на оси х: 56 * cos(30°) = 48,497
2️⃣ Напишем уравнения прямых:
Коэффициент наклона прямых равен тангенсу 30°, то есть 1/√3. Уравнения написаны на рисунке выше.
Видно, что по х нужно рассматривать точки от 0 (не включая) до 48 (включая), а по y — от 0 до 56, не включая оба значения.
Будем брать точку, если она лежит ниже верхней прямой и выше нижней.
3️⃣Построим два вложенных цикла:
from math import sqrt
count = 0
for x in range(1, 48 + 1):
for y in range(1, 56):
if 56 - x / sqrt(3) > y > x / sqrt(3):
count += 1
print(count)
Получим ответ: 1330
Это была последняя задача от методиста Яндекс Лицея Нелли. И, конечно, она не оставила нас без пояснения практической пользы:
Физикам часто нужно точно знать, где находится точка по отношению к линии — выше, ниже или на линии. Например, если тело находится над горизонтом событий чёрной дыры, то оно теоретически ещё может вырваться из её притяжения, а вот если под горизонтом — то уже никак
Закрепляем ссылки на предыдущие лицейские задачи:
• про белку и наушники
• про плотность кубиков
• про плотность подшипников
Готовьтесь решать кое-что посложнее от наших коллег из ШАДа!
#задача
