hdu 4408 Minimum Spanning Tree

题目连接:点击打开链接

解法:利用kruskal算法 把图划分成森林, 同一点有相同最小的权值到别的点, 通过determinant计算树的课数。

总结:模板 + 自己不太懂 = 记录 + 重新学

代码君:

#include 
#include 
#include 

#define LL long long

using namespace std;

const int MAX = 105;
const int MAXE = 1005;

struct node
{
    int set[MAX];
    void init(int n)
    {
        for (int i = 0; i <= n; i++)
            set[i] = i;
    }
    int find(int x)
    {
        if (set[x] != x)
            set[x] = find(set[x]);
        return set[x];
    }
    int Union(

你可能感兴趣的:(hdu)