Компьютерный форум NoWa.cc

Компьютерный форум NoWa.cc (https://nowa.cc/index.php)
-   Visual C++ / С/C++ (https://nowa.cc/forumdisplay.php?f=302)
-   -   Помогите с алгоритмом (https://nowa.cc/showthread.php?t=133495)

BFTFenix 17.12.2007 21:54

Помогите с алгоритмом
 
На плоскости задано множество точек Р и множество прямых L. Найти две такие различные точки из Р, что проходящая через них прямая параллельна наибольшему количеству прямых из L.
У меня вызывает затруднение определение параллельности прямых, и общая идея всего цикла.

ev_Genius 18.12.2007 10:33

Ответ: Помогите с алгоритмом
 
Ну цикл по точкам думаю понятно как организовать? Тогда остается лишь найти векторное произведение векторов: по выбранным двум точкам и направляющим прямой. Если длина векторного произведения равна нулю, то прямые параллельны. Умножать лучше через координаты векторов.

BFTFenix 18.12.2007 13:34

Ответ: Помогите с алгоритмом
 
Цитата:

Сообщение от ev_Genius (Сообщение 1318620)
Ну цикл по точкам думаю понятно как организовать?

Ну не совсем, я задал квадратную матрицу(10,10) и присвоил элементам значение их координат отсчитывая от левого нижнего угла.
Как задать множество прямых я не знаю. Можно еще написать формулы каторымы лучше пользовоться, я продумывал для y=ax+b и мало что придумал.

ev_Genius 19.12.2007 15:16

Ответ: Помогите с алгоритмом
 
Ну множество точек - это всего лишь массив структур типа "точка". Структура типа "точка" состоит из двух (или трех?) числовых координат.
Множество прямых - массив структур типа "прямая".
Структура типа "прямая" состоит из двух указателей на точки. Сюда же можно еще добавить координаты вектора направляющей прямой. Координаты вектора направляющей - просто вычесть из координат одного конца координаты другого.

Добавлено через 1 минуту
Про векторное произведение можно почитать здесь:
http://ru.wikipedia.org/wiki/Векторное_произведение

BFTFenix 20.12.2007 20:03

Ответ: Помогите с алгоритмом
 
Спасибо, мне объяснили что я не совсем правельно предстовлял себе условие задачи. Тему можно закрыть.


Текущее время: 17:17. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, vBulletin Solutions, Inc. Перевод: zCarot
Copyright ©2004 - 2026 NoWa.cc

Время генерации страницы 0.02167 секунды с 9 запросами