Школьная задачка для разминки и занять время - страница 2

 
Maxim Kuznetsov:

алгоритмически в лоб - просто переборы, берём угол, выявляем пределы изменений, перебираем - и далее рекурсивно, выбирая максимальную площадь. Точность и длительность зависит от выбора угла на каждом шаге.

но суммарно длительность весьма мягко говоря велика.

Если пихать в некий оптимизатор, то он должен сходиться шустрее

Просто ищем радиус R описанной окружности. Выражаем угол Ai между радиусами проведёнными к концам i-й стороны мн-ка через R и длину этой стороны Li. Сумма всех Ai должна быть равна 2*Пи. Получаем уравнение для R.

1) Получается, порядок сторон неважен

2) Площадь мн-ка легко выражается через Ai и R

 
Maxim Kuznetsov:

Для N-гранника с фиксированными длинами сторон, надо ещё знать углы между N-3 сторонами. Тогда найдётся площадь конкретной фигуры. Но максимально возможная площадь (для : стороны известны, углы произвольны)- единственная

Угол будет переменой. Формула должна получиться с тремя переменными. 

А можно не угол за переменную брать, а третью сторону треугольника, образованного двумя соседними сторонами.

 
Aleksey Nikolayev:

Просто ищем радиус R описанной окружности. Выражаем угол Ai между радиусами проведёнными к концам i-й стороны мн-ка через R и длину этой стороны Li. Сумма всех Ai должна быть равна 2*Пи. Получаем уравнение для R.

тогда задача разбивается на 2 - найти радиус минимальной описанной окружности (потому-что описанных их много вообще говоря) и дальше что ?

как-то изменять углы между сторонами чтобы R был минимальным...так-же можно сказать что если  сумма_квадратов_углов->max то и площадь->max, только это слабо облегчает алгоритмический поиск (или вывод формулой) максимальной площади

 
А может для начала надо справочники порыть, может уже есть решение?
 
Maxim Kuznetsov:

тогда задача разбивается на 2 - найти радиус минимальной описанной окружности (потому-что описанных их много вообще говоря) и дальше что ?

как-то изменять углы между сторонами чтобы R был минимальным...так-же можно сказать что если  сумма_квадратов_углов->max то и площадь->max, только это слабо облегчает алгоритмический поиск (или вывод формулой) максимальной площади

pl

Ai = 2*arcsin(Li/(2*R))

A1+A2+A3+A4 = 2*Pi - уравнение для нахождения R, которое придётся решать численно (например, методом дихотомии)

 
Dmitry Fedoseev:
А может для начала надо справочники порыть, может уже есть решение?

Есть теорема (Крамера, вроде бы), которая говорит, что площадь многоугольника с заданными сторонами будет максимальна, когда его вершины лежат на окружности.

 
Aleksey Nikolayev:

а как доказать? мне что-то простого способа в голову не приходит

____

Aleksey Nikolayev:

Есть теорема (Крамера, вроде бы), которая говорит, что площадь многоугольника с заданными сторонами будет максимальна, когда его вершины лежат на окружности.

увидел уже когда написал

 
Andrei Trukhanovich:

а как доказать? мне что-то простого способа в голову не приходит

____

увидел уже когда написал

тут подумать надо, но почему-то лень)

 

Старинная задача

Имеется  100 рублей.
Сколько быков, коров и телят можно купить на все эти деньги,
если плата за быка –  10 рублей,
за корову –  5 рублей,
за теленка –  0.5 рубля 
и надо купить  100 голов скота?

решить вложенными циклами
MathML Namespace
  • www.w3.org
MathML Namespace
 
Iurii Tokman:

Старинная задача

Имеется  100 100 рублей.Сколько быков, коров и телят можно купить на все эти деньги, если плата за быка –  10 10 рублей, за корову –  5 5 рублей, за теленка –  0.5 0.5 рубля и надо купить  100 100 голов скота?

"за теленка –  0.5 0.5 рубля"

это как понять?