暢通工程(2007)

2022-08-12 18:42:15 字數 1545 閱讀 6513

題目描述:省**「暢通工程」的目標是使全省任何兩個村莊間都可以實現公路交通(但不一定有直接的公路相連,只要能間接通過公路可達即可)。經過調查評估,得到的統計表中列出了有可能建設公路的若干條道路的成本。現請你編寫程式,計算出全省暢通需要的最低成本。

輸入:測試輸入包含若干測試用例。每個測試用例的第1行給出評估的道路條數 n、村莊數目m (n, m < =100 );隨後的 n 行對應村莊間道路的成本,每行給出一對正整數,分別是兩個村莊的編號,以及此兩村莊間道路的成本(也是正整數)。為簡單起見,村莊從1到m編號。當n為0 時,全部輸入結束,相應的結果不要輸出。

輸出:對每個測試用例,在1行裡輸出全省暢通需要的最低成本。若統計資料不足以保證暢通,則輸出「?」。

樣例輸入:

3 3

1 2 1

1 3 2

2 3 4

1 32 3 2

0 100

樣例輸出:

3

?

1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7

8 #include 9 #include 10 #include 11 #include 12 #include

13 #include 14 #include 15 #include 16 #include

1718

19#define maxd 99999999

20using

namespace

std;

2122

int g[101][101

];23

24int vis[101

];25

26int lowcost[101

];27

2829

3031

intmain()

325758}

5960

61int mincost=0;62

63for(i=1;i<=n;i++)

6468

6970 vis[1]=1;71

72int tag=0;73

7475

76for(i=1;i)

7789}90

}9192if(k==-1

)93

9495 vis[k]=1;96

97 mincost+=lowcost[k];

9899

100for(j=1;j<=n;j++)

101106

}107

}108

}109

110111

if(tag==0

)112

115else

116119

}120

121122

123124

125return0;

126 }

暢通工程續

description 某省自從實行了很多年的暢通工程計畫後,終於修建了很多路。不過路多了也不好,每次要從乙個城鎮到另乙個城鎮時,都有許多種道路方案可以選擇,而某些方案要比另一些方案行走的距離要短很多。這讓行人很困擾。現在,已知起點和終點,請你計算出要從起點到終點,最短需要行走多少距離。input ...

暢通工程續

b 暢通工程續 crawling in process.crawling failed time limit 1000msmemory limit 32768kb64bit io format i64d i64u submit status practice hdu 1874 description...

暢通工程續

problem description 某省自從實行了很多年的暢通工程計畫後,終於修建了很多路。不過路多了也不好,每次要從乙個城鎮到另乙個城鎮時,都有許多種道路方案可以選擇,而某些方案要比另一些方案行走的距離要短很多。這讓行人很困擾。現在,已知起點和終點,請你計算出要從起點到終點,最短需要行走多少距...