並查集還是挺簡單的,路徑壓縮,按秩合併(這個很麻煩,建議了解就好,主要是路徑壓縮,我寫的**也只是普通的合併);
前天學的,要練練手,以防生疏;
#include #include #define maxn 10010
#define inf 999999999
using namespace std;
int map[maxn][maxn],set[maxn];
int find(int x)
int main()
int count = 0;
for(int i = 1; i <= n; i++)
printf("%d\n",count-1);
} return 0;
}
#include #include #define maxn 1003
#define inf 999999999
using namespace std;
int map[maxn][maxn],set[maxn];
int find(int x)
int main()
int count = 0;
for(int i = 1; i <= n; i++)
printf("%d\n",count);
} return 0;
}
HDU3938 並查集 並查集
先按邊權值排個序,每次加入一條邊,用並查集,關鍵看懂題。include include include include using namespace std const int maxn 10010 int n,m,q struct edge edges maxn 5 inline int cmp...
並查集 並查集
本文參考了 挑戰程式設計競賽 和jennica的github題解 陣列版 int parent max n int rank max n void init int n int find int x else void union int x,int y else 結構體版 struct node ...
hdu 拓撲排序 並查集
題目大意 有一些池塘,每乙個池塘都有乙個價值,現在想刪除一些池塘。有如下刪除條件 1 乙個池塘有兩個管道連線的不可以刪除。2 求最後剩下的為奇數環的池塘的價值。先用拓撲排序的思路將兩個一下連線的全刪除 只有用並查集統計數目 includeusing namespace std define ll l...