Как найти площадь квадрата, имея 2 отрезка?

Имеется 2 отрезка: А(6,6; 8,8), В(1,4; 8,9)
Нужно найти площадь квадрата, пробовали разными способами, но все склоняется к смещению координат. В стоке эти отрезки имеют разную длину + не факт, что они параллельны
  • Вопрос задан
  • 274 просмотра
Пригласить эксперта
Ответы на вопрос 2
wataru
@wataru Куратор тега Математика
Разработчик на С++, экс-олимпиадник.
Отлично, в комментариях уточнили задачу - надо описать вокруг двух заданных прямоугольников квадрат минимальной площади. Прямоугольники не пересекаются и не касаются и параллельны осям координат.

Не совсем пока еще понятно, квадрат может быть ориентирован как угодно, или тоже должен быть параллелен осям координат? Судя по тупости формулеровок я думаю, что составители задачи имели в виду более простой вариант, и стороны квадрата тоже должны быть параллельны.

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

Если же это не сработает и квадрат можно вращать, то тут все сложно. Путем очень хитрых геометрических рассуждений можно доказать, что квадрат в оптимальном случае, все-таки, будет параллелен осям координат и просто написать решение выше. Ну, или, если не верите, то можно ввести угол поворота как переменную, написать функцию, котороя поворачивает все точки на данный угол, а потом ищет (по алгоритму в начале) площадь описанного параллельного осям квадрата, и потом запустить тернарный поиск минимума по этой функции.
Ответ написан
Griboks
@Griboks
Никак. Квадрат состоит из 4 отрезков, ещё и не произвольных, а взаимосвязанных.

Имеется 2 отрезка: А(6,6; 8,8), В(1,4; 8,9)

Имеются две точки, а не отрезка. У отрезка есть 4 координаты: 2х начало и 2х конец.
Нужно найти площадь квадрата

s=a^2
пробовали разными способами, но все склоняется к смещению координат.

Попробуйте сместить координаты на север другими сопособами, чтобы квадрат встал налево.
В стоке эти отрезки имеют разную длину + не факт, что они параллельны

Если речь идёт о сторонах квадрата, то его отрезки всегда равны, и попарно параллельны, и углы по 90 градусов.
отрезки А, Б - координаты левого нижнего и правого верхнего угла первого и второго прямоугольника

Отлично, осталось где-то найти остальные координаты, тогда вы сможете вычислить площадь этих ваших прямоугольников.
их нужно преобразовать, чтобы получился квадрат и вычислить его площадь :)

Надо сложить два прямоугольника, а затем разделить на 2, затем возвести в квадрат и извлечь из них корень (или взять модуль).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы