Бухал Бежал я тут и вдруг мне взбрела задачка в голову, не могу ничего вспомнить для ее решения. Допустим, есть n алкашей. Один нашел бутылку, второй закусон, третий баб, ..., n-ный нашел решение этой задачи. Как мне найти точку в которой они встретятся, что бы расстояние до нее для всех было кратчайшим?Пик почти рандом
ну же, хоть в паре слов, ребятушки
>>835766 (OP)Да ты алгоголик, все мозги пропил… Элементарно решается. У тебя есть одно-двух-трех мерная плоскости, каждая представлена координатами. Тебе нужно зайти в гугол, посмотреть как для твоей плоскости вычислять координаты, для линейной например, расстояние будет равно модулю a-b, где а и б -- координаты.Ну короче погуглишь ты такой, узнаешь формулу.Теперь впишем множество твоих гандонов-собутыльников в квадрат. Нам важны узнать самых удаленных по координатам, для двух-мерной плоскости это будет четыре точки описывающие квардрат.Теперь разбиваешь этот «квадрат на сетку и для каждой вершины ищешь дистанцию кому сколько нужно проползти. После нахождения лучшего квадрата, дробишь этот квадрат на еще меньшие квадратики и повторяешь пока не достигнешь заданной точности. Тут можно придумать много всяких оптимизирующих штук, но ты хуй, а мне лень. Надеюсь идея подхода понятно, спасибо, до свидания.
>>835770
√ тест
√ test
x, y - координаты точки общего центра.x1, y1, x2, y2, ... xn, yn - координаты искомых точек.√((x-x1)²+(y-y1)²) = √((x-x2)²+(y-y2)²) = ... = √((x-xn)²+(y-yn)²)Судя по всему чем больше точек и выше точность, тем вероятнее нахождение общего центра за пределами областей всех точек.
(x,y) - координаты общего центра(x1,y1),(x2,y2),...,(xn,yn) - координаты искомых точек√((x-x1)²+(y-y1)²) = √((x-x2)²+(y-y2)²) = ... = √((x-xn)²+(y-yn)²)Чем больше точек и выше точность, тем дальше от них центр