無線通訊網 kruskal演算法

2022-10-09 04:15:13 字數 919 閱讀 4776

p1991 無線通訊網 - 洛谷 | 電腦科學教育新生態 (luogu.com.cn)

這道題看著很複雜,需要讀幾遍題才理解。題意可以轉化為在圖里去掉k-1條最小邊後,第k條最小邊即為答案。

因為在圖中去掉n條邊,就會得到n+1個連通塊。那麼就把所有哨所劃分成了n+1個連通塊,我們只需要在每個連通塊裡放乙個衛星,這樣不同連通塊可以通過衛星聯絡,而每個連通塊內部的哨所可以通過無線電來聯絡。所以當我們用kruskal演算法將每個哨所之間的距離從小到大排好序後,因為有s個衛星、p個哨所,所以我們只需要將剛開始初始化的p個連通塊用並查集轉化為s個連通塊就可以保證上述衛星與無線電的要求了。而為了轉化為s個連通塊,我們應該進行p-s次並查集的合併。

1 #include 2

using

namespace

std;

3const

int n=3e5,m=600;4

ints,q,x[m],y[m],idx,p[m];

5struct

node

6e[n];

1011

bool cmp(const node&s1,const node&s2)

1215

16double juli(int i,int

j)17

2223

int find(int

x)24

2829

void

kruskal()

3045

if(k>=q-s) //

有s個連通塊

4650}51

}5253int

main()

5465}66

67kruskal();

6869

return0;

70 }

view code

P1911 無線通訊網 kruskal

鏈結 這是乙個最小生成樹的問題,其實只要模擬一下即可。兩種通訊方式,無線電和衛星通訊,假設共m個點,衛星 是n個。當n 2的時候實際上就是乙個最小生成樹問題,而當n 2的時候我們可以去掉最小生成樹上的最長邊,通過衛星 向鏈結,n 2時操作也一樣,衛星 只是改變了kruskal演算法終止的條件,由原先...

無線通訊網 軟考

1.無線移動通訊 2.無線區域網 3.無線個人網 4.無線都會網路 無線區域網 考點1 各種移動標準 1g 一代模擬蜂窩 頻分雙工fdd 2g 第二代數字蜂窩 1.gsm 全球移動通訊 採用tdma 2.cdma 分碼多重進接通訊 2.5g 第2.5代通用分組無線業務gprs 2.75g edge ...

P1991 無線通訊網 MST

每個邊防哨所都要配備無線電收發器 有一些哨所還可以增配衛星 任意兩個配備了一條衛星 線路的哨所 兩邊都 有衛星 均可以通話,無論他們相距多遠。而只通過無線電收發器通話的哨所之間的距離不能超過 d,這是受收發器的功率限制。收發器的功率越高,通話距離 d 會更遠,但同時 也會更貴。收發器需要統一購買和安...