nyoj 925 國王的煩惱(最小生成樹)

2021-09-20 15:02:33 字數 642 閱讀 9749

/*

題意:n個城市中每兩個城市有多條路徑連線,可是因為路徑存在的天數是有限的!以為某條路經不存在了

導致n個城市不能連通了,那麼村名們就會**!問一共會有多少次**!

思路:最小生成樹....我們用最大邊來建立樹!只要有最大邊將節點連線並保證連通!那麼邊權小的值

就可以忽略了!最後將生成樹中由(最大邊組成的)去重(相同的值只有一次**)!這時剩下邊的數值就是

答案了! 

*/#include

#include

#include

#include

#include

#define m 10005

#define n 100005

using namespace std;

struct edge;

int f[n];

int n, m;

int getfather(int x)

bool union(int a, int b)     

return false; }

bool cmp(edge a, edge b)

edge edge[n];

int xx[n];

int main()

return 0;     }

nyoj 925 國王的煩惱(最小生成樹)

1 2 題意 n個城市中每兩個城市有多條路徑連線,可是因為路徑存在的天數是有限的!以為某條路經不存在了 3導致n個城市不能連通了,那麼村名們就會 問一共會有多少次 45 思路 最小生成樹.我們用最大邊來建立樹!只要有最大邊將節點連線並保證連通!那麼邊權小的值 6就可以忽略了!最後將生成樹中由 最大邊...

nyoj 925 國王的煩惱(最小生成樹)

題意 n個城市中每兩個城市有多條路徑連線,可是因為路徑存在的天數是有限的!以為某條路經不存在了 導致n個城市不能連通了,那麼村名們就會 問一共會有多少次 思路 最小生成樹.我們用最大邊來建立樹!只要有最大邊將節點連線並保證連通!那麼邊權小的值 就可以忽略了!最後將生成樹中由 最大邊組成的 去重 相同...

NYOJ 925 國王的煩惱

並查集的一道題目,不知道為何有些部落格上說成是最小生成樹,也許最小生成樹也可以解決這個問題,坎坎坷坷打完了 上交就tle,好菜啊,不過看了看自己的方法複雜度確實夠高的。看了網上的 乙個很好的想法 反向考慮,路斷變路修,同一天的算乙個。一句就解決了我的超時問題,當然對並查集也有一些改變的,我覺得自己寫...