題目描述 description
乙個國家有n個城市。若干個城市之間有**線連線,現在要增加m條**線(**線當然是雙向的了),使得任意兩個城市之間都直接或間接經過其他城市有**線連線,你的程式應該能夠找出最小費用及其一種連線方案。
輸入描述 input description
輸入檔案的第一行是n的值(n<=100).
第二行至第n+1行是乙個n*n的矩陣,第i行第j列的數如果為0表示城市i與城市j有**線連線,否則為這兩個城市之間的連線費用(範圍不超過10000)。
輸出描述 output description
輸出檔案的第一行為你連線的**線總數m,第二行至第m+1行為你連線的每條**線,格式為i j,(i
n<=100
#include#include#define inf 0x7fffffff
#define max 105
int map[max][max],cost[max],head[max],tail[max],sum,m,cnt;
void prim()
for(i=1;imap[flag][j])
}}int main()
{ freopen("b.txt","r",stdin);
while(scanf("%d",&m)==1)
{ int i,j;
for(i=1;i<=m;i++)
for(j=1;j<=m;j++)
scanf("%d",&map[i][j]);
prim();
printf("%d\n",cnt);
for(i=0;i
1003 電話連線
時間限制 1 s 空間限制 128000 kb 題目等級 gold 乙個國家有n個城市。若干個城市之間有 線連線,現在要增加m條 線 線當然是雙向的了 使得任意兩個城市之間都直接或間接經過其他城市有 線連線,你的程式應該能夠找出最小費用及其一種連線方案。輸入描述 input description ...
Code Vs 1003 電話連線
比較水的題目,裸prim.下面 寫得有點麻煩.僅供參考.其實不用寫那麼多記錄.我是蒟蒻.qaq include include include include include include include includeusing namespace std const int m 105 con...
codevs 1003 電話連線
題解 prim 分析 從輸出要求中就可以看出本題是prim演算法求最小生成樹,所以,只需要實現就可以了。那麼,我們來回顧一下prim演算法 1.設有2個集合v1,v2 預設有5個點 2.在圖中找到離當前第乙個點最近的點,我們假設是2,然後用2去鬆弛每一條邊 3.重複第2步直到迴圈n 1次 那麼題目就...