暢通工程 HZNU寒假集訓

2022-04-30 22:30:23 字數 1051 閱讀 9801

暢通工程

某省調查城鎮交通狀況,得到現有城鎮道路統計表,表中列出了每條道路直接連通的城鎮。省**「暢通工程」的目標是使全省任何兩個城鎮間都可以實現交通(但不一定有直接的道路相連,只要互相間接通過道路可達即可)。問最少還需要建設多少條道路?

input

測試輸入包含若干測試用例。每個測試用例的第1行給出兩個正整數,分別是城鎮數目n ( < 1000 )和道路數目m;隨後的m行對應m條道路,每行給出一對正整數,分別是該條道路直接連通的兩個城鎮的編號。為簡單起見,城鎮從1到n編號。

注意:兩個城市之間可以有多條道路相通,也就是說

3 3

1 2

1 2

2 1

這種輸入也是合法的

當n為0時,輸入結束,該用例不被處理。

output

對每個測試用例,在1行裡輸出最少還需要建設的道路數目。

sample input

4 21 3

4 33 3

1 21 3

2 35 2

1 23 5

999 0

0sample output10

2998

1 #include2 #include3 #include4 #include5 #include6 #include7 #include8

using

namespace

std;

9int road[150000

];10

int find(int

x)11

1415

void mix(int x, int

y)16

20int

main()

2132

for(cout=-1,i=1;i<=n;i++)

3337 printf("

%d\n

",cout);38}

3940 }

寒假集訓 Find Metal Mineral

題目鏈結 題意 給出一顆生成樹,1 n 10000,在某乙個節點有k個機械人 k 10 然後機械人從這裡開始走,要求遍歷完節點,隨便停到什麼地方.求最少的路程總和.題解 樹形dp,關鍵是dp u i i的定義,因為機械人可能從子樹再跑回來,然後為了避免重複討論,應該定義為 在u為根的子樹上停了幾個機...

寒假集訓總結

寒假的訓練以不太順利的結果結束。整個寒假訓練都是兩天一場學長抓的訓練賽,然後補題,由於自己比較菜以及一些莫名的因素,導致訓練賽打得比較差,尤其是後幾場。訓練賽沒能打好的原因可能與狀態關係確實很大,但其中肯定與實力有關吧。總結一下,這些題目,演算法和思維上難倒自己的好像也沒幾道 後來補出來的 但是賽場...

ACM寒假集訓

出自 南昌理工學院acm集訓隊 什麼是dfs?void dfs 狀態 a 1.判斷狀態是否合法。合法繼續執行,否則則回到上次呼叫 2.先下走一層,也就是呼叫dfs a void dfs 引數用來表示狀態 if 越界或者是不合法狀態 return if 特殊狀態 剪枝 return for 擴充套件方...