D 資料中心(Week6

2021-10-23 02:49:23 字數 968 閱讀 6977

樣例輸入

1 2 3

1 3 4

1 4 5

2 3 8

3 4 2

樣例輸出

樣例說明

題目簡化:給定乙個無向圖中的邊,求解最小生成樹

題目思想:kruskal

儲存方式:自定義結構體,其中過載了運算子

實現: 將圖中所有的邊根據權重排序,從小到大依次遍歷每一條邊

判斷該邊加入後是否成環,如果成環返回false,棄掉這條邊

若不成環,將邊加入圖中

進行下乙個邊的判斷,直到圖中的n個點全部連線起來,即已加入n-1條邊

#include

#include

#include

using

namespace std;

int n,m,root,cnt,ans;

struct node

}term[

100005];

int par[

100005

],rnk[

100005];

intfind

(int x)

bool

unite

(int x,

int y)

intmain()

for(

int i=

0;icout<

return0;

}

WEEK6作業 D 資料中心

題目 思路乍看這道題有點難懂,但是看了資料才明白要求的是生成樹中的最大邊中的最小邊,也就是求最小生成樹的問題跟上一道題一樣,不過注意的是要寫路徑壓縮後的 否則會超時。當然最大中取最小也可以用二分的方法,在這裡就不用了。include include using namespace std int p...

week6 灌溉 資料中心

灌溉title input 第1行 乙個數n 第2行到第n 1行 數wi 第n 2行到第2n 1行 矩陣即pij矩陣 output 東東最小消耗的mp值 樣例 input 45 4430 2 2 2 2 0 3 3 2 3 0 4 2 3 4 0 output 9資料中心title 分析 灌溉 分析...

Week6 資料中心 並查集

輸入案例 451 1 2 3 1 3 4 1 4 5 2 3 8 3 4 2 輸出格式 思路分析其實這道題要求的答案,就是對給出的圖,求出其所有可能的生成樹里,最大的邊權最小的那棵生成樹,然後輸出它的那個最大的邊權。我們知道,最小生成樹一定是瓶頸生成樹,那麼直接求最小生成樹即可 並查集。題目給出的r...