練習 並查集 最小生成樹練習題

2021-08-02 06:07:53 字數 2077 閱讀 8795

嗯。。都是些

最最最基礎的水題

直接模板就ok了。。

剛學的可以一做

1.洛谷 並查集模板

#include#include#include#include#include#include#define n 10005

#define m 200005

using namespace std;

int n,m,p;

int fa[m];

int findf(int x)

void merge(int x,int y)

void solve() }}

int main()

2.vijos1034家族

#include#include#include#include#include#include#define n 5005

#define m 5005

using namespace std;

int n,m,p;

int fa[m];

int findf(int x)

void merge(int x,int y)

void solve()

for(int i=1;i<=p;i++)

}int main()

3.洛谷p1892團夥

#include#include#include#includeusing namespace std;

int n,m;

int flag;

int f[2500];

int find(int x)

int main()

}int s=0;

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

if(f[i]==i) s++;

printf("%d",s);

return 0;

}

4.洛谷p2078朋友

#include#include#include#include#include#include#define n 20005

#define m 20005

using namespace std;

int n,m,p,q;

int a[n],b[n];

int findf1(int x)

int findf2(int x)

void merge1(int x,int y) e[m];

bool cmp(node x,node y)

void merge(int x,int y)

int main()

if(tot==n-1)

flag=1;

} printf("%d\n",n-1-tot);

} return 0;

}

7.洛谷p1396 營救(最小生成樹+並查集)

#include#include#include#include#include#include#define n 10005

#define m 20005

using namespace std;

int n,m,s,t;

int fa[n];

struct nodee[m];

void read()

bool cmp(node xx,node yy)e[m];

int findf(int x)

void merge(int x,int y)

void read()

bool cmp(node xx,node yy)e[m];

int findf(int x)

void merge(int x,int y)

void read()

bool cmp(node xx,node yy)

int main()

if(tot==n-1)

} printf("-1");

return 0;

}

最小生成樹 並查集練習

叢林中的路 熱帶島嶼lagrishan的首領現在面臨乙個問題 幾年前,一批外援資金被用於維護村落之間的道路,但日益繁茂的叢林無情的侵蝕著村民的道路,導致道路維修開銷巨大,長老會不得不放棄部分道路的維護。已經知道了每條路每個月的維修費用 單位為aacms 現在長老會需要提出一種方案,即需要保證村落之間...

並查集(最小生成樹)

時間限制 1000 ms 記憶體限制 65536 kb 題目描述 有一張城市地圖,圖中的頂點為城市,無向邊代表兩個城市間的連通關係,邊上的權為在這兩個城市之間修建高速公路的造價,研究後發現,這個地圖有乙個特點,即任一對城市都是連通的。現在的問題是,要修建若干高速公路把所有城市聯絡起來,問如何設計可使...

並查集 最小生成樹(prim kruskal)

並查集,從名字上來看可以知道,是乙個集合,而且這個集合可以合併和查詢。查詢,主要是查詢集合中的某乙個元素的祖先是誰,某一些元素是不是擁有相同的祖先。合併,是把兩個不想交的集合合併為乙個集合。並查集的思想就是朋友的朋友就是朋友 雖然現實生活中並不是這樣 並查集的第一步初始化,自己是自己的祖先。乙個人來...