任意兩個配備了一條衛星**線路的哨所均可以通話,無論它們相距多遠。而只通過無線電收發器通話的哨所之間的距離不能超過d,這是受收發器的功率限制。收發器的功率越高,通話距離d會更遠,但同時**也更貴。
收發器需要統一購買和安裝,所以全部哨所只能選擇安裝一種型號的收發器。換句話說,每一對哨所之間的通話距離都是同乙個d。
你的任務是確定收發器必須的最小通話距離d,使得每一對哨所之間至少有一條通話路徑(直接的或者間接的)。
第1行:2個整數s(1 <= s <= 100)和p(s < p <= 500),s表示可安裝的衛星**的線路數,p表示邊防哨所的數量。
接下來p行,每行描述乙個哨所的平面座標(x,y),以km為單位,整數,0<=x,y<=10,000
第1行:1個實數d,表示無線電收發器的最小傳輸距離。精確到小數點後2位。
圖論專題於是想到了最小生成樹,
統計一下兩兩之間的點的距離排序,並查集判斷是否在同乙個集合,kruskal一下就能過了
因為題目有n次免費機會,所以只用找到m-n條邊就可以退了,由於邊有序,所以免費靠後的邊是最優的
還有就是,洛谷有原題;-b
#include
#include
#include
#include
using
namespace
std;
struct edge
;edge e[500500];
int x[1001],y[1001],f[1001];
int maxe=0;
double dist(int a,int b)
void add(int x,int y,double w);}
bool cmp(edge x,edge y)
void merge(int x,int y)
int main()
}printf("%.2f\n",ans);
return
0;}
無線通訊網 紀中3078 最小生成樹
任意兩個配備了一條衛星 線路的哨所均可以通話,無論它們相距多遠。而只通過無線電收發器通話的哨所之間的距離不能超過d,這是受收發器的功率限制。收發器的功率越高,通話距離d會更遠,但同時 也更貴。收發器需要統一購買和安裝,所以全部哨所只能選擇安裝一種型號的收發器。換句話說,每一對哨所之間的通話距離都是同...
P1991 無線通訊網 最小生成樹
每個邊防哨所都要配備無線電收發器 有一些哨所還可以增配衛星 任意兩個配備了一條衛星 線路的哨所 兩邊都 有衛星 均可以通話,無論他們相距多遠。而只通過無線電收發器通話的哨所之間的距離不能超過 d,這是受收發器的功率限制。收發器的功率越高,通話距離 d 會更遠,但同時 也會更貴。收發器需要統一購買和安...
P1991 無線通訊網 最小生成樹
每個邊防哨所都要配備無線電收發器 有一些哨所還可以增配衛星 任意兩個配備了一條衛星 線路的哨所 兩邊都 有衛星 均可以通話,無論他們相距多遠。而只通過無線電收發器通話的哨所之間的距離不能超過 d,這是受收發器的功率限制。收發器的功率越高,通話距離 d 會更遠,但同時 也會更貴。收發器需要統一購買和安...