Помогите с алгоритмом!

программирование обучение алгоритм

Есть 100 точек, если их соединить - получиться ломанная. Нужно найти две точки, такие, что если провести между ними линию, то она будет находиться под ломанной, и не будет нигде пересекать её. И так все существующие комбинации точек.
Ответы:
Хм... Можно попробовать таким образом:
1. Строим матрицу, которая будет увеличивать свои геометрические размеры при добавлении очередной точки, если та выходит за границы. Для подобных изысков лучше всего использовать разреженный массив, ибо точек мало, а раскиданы они могут быть далеко.
2. Выбираем точку на нижней границе квадрата (матрицы). Находим точку, наиболее близко отстоящую от нижней границы (смотрим по строкам снизу-вверх). Нашли, получили уравнение прямой.
Пока не дойдем до верха:
3. Продолжаем обход вверх. Если натыкаемся на точку, которая находится ниже нашей прямой (сравниваем координаты Y для заданного X), то считаем ее нижней и пересчитываем уравнение.
КонецЦикла.
Хотя с матрицей я погорячился. Можно просто отсортировать массив по Y и затем по X.
Скучно с утра?
Прежде чем, что-то посоветовать, разрешите выяснить условие задачи (на будущее и Вам советую ...).
Ну, как я понимаю то, что написано: надо выбрать две точки такие, что при проведении через них прямой, эта прямая не будет проходить через "облако" заданных точек. То есть, нижняя грань многоугольника, описывающего все эти точки будет частью прямой. Хотя, меня тоже пугает фраза: "И так все существующие комбинации точек". Вроде как получается, что как раз таки надо построить этот самый описывающий многоугольник, и показать его грани...
Ну, как я понимаю то, что написано: надо выбрать две точки такие, что при проведении через них прямой, эта прямая не будет проходить через "облако" заданных точек. То есть, нижняя грань многоугольника, описывающего все эти точки будет частью прямой. Хотя, меня тоже пугает фраза: "И так все существующие комбинации точек". Вроде как получается, что как раз таки надо построить этот самый описывающий многоугольник, и показать его грани...
To WoulDoar,


16 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.