COGS T 7 通訊線路

2022-04-07 04:30:30 字數 1320 閱讀 5234

★★   輸入檔案:mcst.in輸出檔案:mcst.out簡單對比

時間限制:1.5 s   記憶體限制:128 mb

問題描述

假設要在n個城市之間建立通訊聯絡網,則連通n個城市只需要n-1條線路。這時, 如何在最少經費的前提下建立這個通訊網。在每兩個城市之間都可以設定—條線路,相應地都要付出一定的經濟代價。n個城市之間,最多可能設定n(n- 1)/2條線路,那麼,如何在這些可能的線路中選擇n-1條,以使總的耗費最少呢?

【輸入格式】

輸入檔案有若干行

第一行,乙個整數n,表示共有n個城市

第2--n+1行,每行n個數,分別表示該城市與其它城市之間路線的費用,如果城市間不能建立通訊則用-1表示

【輸出格式】

一行,1個整數,表示最少總費用

【輸入輸出樣例】

輸入檔案

6 -1 5 -1 -1 -1 -1 

5 -1 50 -1 -1 10

-1 50 -1 20 10 -1

-1 -1 20 -1 60 30

-1 -1 10 60 -1 100

-1 10 -1 30 100 -1

輸出檔案

75【資料規模】

對於40%的資料,保證有n<100: 

對於60%的資料,保證有n<256; 

對於全部的資料,保證有n<=1501。

1 #include2 #include3

4using

namespace

std;56

const

int n(1506);7

intn,tot,fa[n];

8struct

edge

9 edge[n*n>>1

];12

bool

cmp(edge a,edge b)

1316

17int find(int

x)18

2122 inline void read(int &x)

2329

30int

main()

3145}46

for(int i=1; i<=n; i++) fa[i]=i;

47 sort(edge+1,edge+1+tot,cmp);

48int cnt=0,ans=0;49

for(int i=1; i<=tot; i++)

5058 printf("%d"

,ans);

59return0;

60 }

AcWing 340 通訊線路

在郊區有 n 座通訊基站,p 條 雙向 電纜,第 i 條電纜連線基站ai和bi。特別地,1 號基站是通訊公司的總站,n 號基站位於一座農場中。現在,農場主希望對通訊線路進行公升級,其中公升級第 i 條電纜需要花費li。公司正在舉行優惠活動。農產主可以指定一條從 1 號基站到 n 號基站的路徑,並指定...

POJ 3662 通訊線路

摘要 簡單來講就是在無向圖上求出一條從1到n的路徑,使路徑上第k 1大的邊權盡量小。第k大的盡量小,這種表述就容易讓人想到二分。那麼我們只要把權值大於mid的路徑權值設為1,小於mid的置為0,求1到n的最短路是否不超過n即可。include include include include incl...

雙端佇列 二分 通訊線路

在郊區有 n 座通訊基站,p 條 雙向 電纜,第 i 條電纜連線基站ai和bi。特別地,1 號基站是通訊公司的總站,n 號基站位於一座農場中。現在,農場主希望對通訊線路進行公升級,其中公升級第 i 條電纜需要花費li。公司正在舉行優惠活動。農產主可以指定一條從 1 號基站到 n 號基站的路徑,並指定...