Администрация города решила разбить парк на пустыре площадью N×M
. В парке планируется высадить деревья. Для каждого дерева нужно выделить участок прямоугольной формы с целочисленными сторонами и площадью, равной S
.
Все участки должны быть равны, одинаково ориентированы, и их стороны должны быть параллельны сторонам пустыря.
Какое наибольшее количество деревьев можно высадить в парке?
Напиши на Python
python
def max_trees(N, M, S):
max_count = 0
for i in range(1, N+1):
for j in range(1, M+1):
for s in range(1, N*M+1):
if s == N * M:
max_count = N * M // s
elif i * j == s and N % i == 0 and M % j == 0:
max_trees = (N // i) * (M // j)
if max_trees > max_count:
max_count = max_trees
return max_count
Пример использования функции:
python
N = 6
M = 8
S = 6
result = max_trees(N, M, S)
print(result) # Выводит: 4
В данном примере размещение деревьев будет иметь следующий вид:
X X X X X X X X
X X X X X X X X
X X X X X X X X
X X X X X X X X
X X X X X X X X
X X X X X X X X
Таким образом, наибольшее количество деревьев, которое можно высадить в парке, равно 4.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет