![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 18.02.2010
Сообщений: 164
|
![]()
здравствуйте
задача такая найти такую точку заданного на плоскости множества точек сумма расстояний от которой до остальных минимальна. подскажите как реализовать сравнение вершин в цикле получилось только расписать одну итерацию без цикла то есть сравнил первую вершину с координатами v1(10,2) и остальные получил сумму расстояний... Код:
|
![]() |
![]() |
![]() |
#2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Типа такого судя по твоему коду...
Код:
I'm learning to live...
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 18.08.2010
Сообщений: 140
|
![]()
я бы предложил вариант определения расстояний такой:
(си не знаю, на пхп напишу - очень похоже на си) Код:
Люди бывают десяти типов: те, кто знают двоичную систему, и те, кто нет
Последний раз редактировалось pray_driver; 30.10.2010 в 22:42. |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 18.02.2010
Сообщений: 164
|
![]()
а не подскажешь как лучше сравнивать первую точку и все остальные, следующую и все остальные...что то я не пойму
|
![]() |
![]() |
![]() |
#5 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
У-у-у Тут нужно описать процедуру...
В нее передавай номер точки а она уже будет сравнивать с остальными исключая эту точку.
I'm learning to live...
|
![]() |
![]() |
![]() |
#6 | |
Форумчанин
Регистрация: 18.08.2010
Сообщений: 140
|
![]() Цитата:
![]()
Люди бывают десяти типов: те, кто знают двоичную систему, и те, кто нет
|
|
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 18.08.2010
Сообщений: 140
|
![]()
Кстати, гораздо интереснее задача была бы найти на всей плоскости точку, сумма растояний от которой до множества точек была бы минимальной. То есть не среди перечисленных, а неизвестную точку (x;y). Например для отрезка - это была бы середина отрезка
![]() ![]() ![]()
Люди бывают десяти типов: те, кто знают двоичную систему, и те, кто нет
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 18.02.2010
Сообщений: 164
|
![]()
а ты можешь в коде показать как сравнивать координаты точек а то я совсем запутался??
|
![]() |
![]() |
![]() |
#9 |
Форумчанин
Регистрация: 18.08.2010
Сообщений: 140
|
![]()
Alex_sim, если это вопрос ко мне, то я честно немножко не понимаю с какой целью и по каким параметрам её сравнивать. Я там выше написал алгоритм - находит среди точек ту, сумму расстояний от которой до других минимальна. Могу его по русски описать так:
Код:
Трудоёмкость такого конечно n^2 не слишком оптимизировано. Полный перебор, зато всё находит
Люди бывают десяти типов: те, кто знают двоичную систему, и те, кто нет
|
![]() |
![]() |
![]() |
#10 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,543
|
![]()
mX:=(x[1]+x[2]+...+x[n])/N
mY=([Y[1]+y[2]+..+y[n])/N //средняя точка (центр тяжести) множества точек L[1]:=(MX-X[1])^2 +(My-Y[1])^2 L[2]:=(MX-X[2])^2 +(My-Y[2])^2 ... L[N]:=(MX-X[N])^2 +(My-Y[N])^2 //расстояния от центра до всех точек min(L[1],L[2],...,L[N]) //точка самая близкая к центру
программа — запись алгоритма на языке понятном транслятору
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
сумма растояний | Alex_sim | Общие вопросы по Java, Java SE, Kotlin | 0 | 30.10.2010 18:34 |
Сумма | kskb7771 | БД в Delphi | 1 | 12.06.2010 03:04 |
Сумма | ARTEGA | Общие вопросы Delphi | 7 | 20.04.2010 21:21 |
Как реализовать расчет растояний | Phantom | PHP | 3 | 12.01.2010 15:22 |
Сумма | RIP VIP | Помощь студентам | 8 | 02.05.2008 14:33 |