一維帶權郵局位置問題(找帶權中位數)C 實現

2021-08-26 09:51:26 字數 620 閱讀 8131

帶權郵局位置問題: 已知n個點p1,p2,...,pn及與它們相聯絡的權重w1,w2,...,wn。我們希望能找到一點p(不一定是輸入點中的乙個),使和式

最小,此處d(a,b)表示點a和點b之間的距離。

對於一維帶權郵局位置問題即找帶權中位數。如下

struct node

;node nodes[n];

//產生乙個隨即下標,用其對應的陣列元素作為比較標準(即一趟快速的主元)

int random(int m,int n)

//一趟快速排序

int qartition(node *nodes,int begin,int end)

return nodes[i];

}int _tmain(int argc, _tchar* argv)

random_fast_sort(nodes,0,n-1);

cout<

找出二維帶權郵局位置問題的最佳解答,其中所有的點都是(x,y)座標對,並且點a(x1,y1)與點b(x2,y2)之間的距離是manhattan距離:d(a,b)=|x1-x2|+|y1-y2|。

對於二維帶權郵局位置問題可以轉化為一維郵局位置問題,分別求x、y的帶權中位數。見下篇《二維帶權郵局位置問題》

二維郵局選址問題 帶權中位數

演算法設計練習作業,郵局選址問題,將自己寫的分享,有問題請指正,希望共同學習。關於郵局選址問題的理論知識就不贅述了,網上有講解的。include include include using namespace std 郵局選址問題,帶權中位數 輸入的座標不能相同,即x或y各自是n個不同的數,該程式為...

帶權中位數

話說在3085年,外星人打算來入侵地球,這個訊息被我國的情報部門秘密截獲,於是便打算聯絡世界各個國家,一 起研究商量對策。由於每個國家所需派的技術員人數不同,所以目前無法決定到底要在哪個國家設定個研究所進行 研究,幸運的是所有國家都在一條直線上,現在知道每個國家與我國的距離和該國的研究員人數。請你為...

中位數及帶權中位數問題

資訊學競賽總是時不時與數學產生微妙的關係,中位數及帶權中位數問題有時常常成為解題的關鍵,今日有時間,所以梳理一下。先從一到簡單的題看起 士兵站隊問題 在乙個劃分成網格的操場上,n個士兵散亂地站在網格點上。網格點由整數座標 x,y 表示。士兵們可以沿網格邊上 下 左 右移動一步,但在同一時刻任一網格點...