最小生成树

标签: 笔记 最小生成树
1人阅读 评论(0) 收藏 举报
分类:
#include<bits/stdc++.h>
using namespace std;
struct Edge{
    int s,e;
    int v;
}edge[3005];
bool cmp(Edge a,Edge b){
    return a.v<b.v;
}
int pa[1005];
int findp(int a){
    if(pa[a]!=a){
        return findp(pa[a]);
    }else
        return a;
}
int join(int a,int b){
    int f=0;
    int faa,fab;
    faa = findp(a);
    fab = findp(b);
    if(faa!=fab){
        pa[fab]=faa;
        f=1;
    }
    return f;
}
int main(){
    int n,m;
    cin>>n>>m;
    for(int i=0;i<m;i++){
        cin>>edge[i].s>>edge[i].e>>edge[i].v;
    }
    sort(edge,edge+m,cmp);
    for(int i=1;i<=n;i++){
        pa[i]=i;
    }
    int cnt=0;
    int sum=0;
    for(int i=0;i<m;i++){
        if(join(edge[i].s,edge[i].e)==1){
            cnt++;
            sum+=edge[i].v;
        }
    }
    if(cnt!=n-1)
    cout<<"-1\n";
    else
    cout<<sum<<endl;
    return 0;
}
查看评论

最小生成树最小生成树最小生成树最小生成树

  • 2009年12月06日 14:20
  • 468KB
  • 下载

最小生成树最小生成树最小生成树最小生成树最小生成树

  • 2010年06月26日 16:13
  • 2KB
  • 下载

C#实现最小生成树

  • 2015年01月07日 11:46
  • 65KB
  • 下载

最小生成树解决tsp问题

  • 2014年04月06日 15:55
  • 894KB
  • 下载

bzoj 2521: [Shoi2010]最小生成树(最小割)

2521: [Shoi2010]最小生成树 Time Limit: 10 Sec  Memory Limit: 128 MB Submit: 422  Solved: 246 [Submit][...
  • clover_hxy
  • clover_hxy
  • 2016-08-14 19:43:45
  • 345

Java 版 Prim 算法求最小生成树

最小生成树: 一个具有n个顶点的加权的无相连通图,用n-1条边连接这n个顶点,并且使得连接之后的所有边的权值之和最小的树。Prim算法:先以一个结点作为最小生成树的第一个结点,然后以迭代的方式找出与最...
  • change_on
  • change_on
  • 2017-02-27 22:43:51
  • 1480

D 1016: [JSOI2008]最小生成树计数 (最小生成树个数)

题目描述 现在给出了一个简单无向加权图。你不满足于求出这个图的最小生成树,而希望知道这个图中有多少个不同的最小生成树。(如果两颗最小生成树中至少有一条边不同,则这两个最小生成树就是不同的)。由于...
  • thy0311
  • thy0311
  • 2015-04-25 20:18:02
  • 940

最小生成树题集

A题,L题:poj2421 简单题 题意:题目这么长,其实大部分都在扯逼-_-。以字母代替点,每行输入字母,与其相连的个数,以及相连的具体点和其距离,计算全联通最小距离。 题解:只需要把字母距离化...
  • qq_33199236
  • qq_33199236
  • 2016-08-01 20:21:16
  • 1725

最小生成树概念及性质

概念 一个有 n 个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 n 个结点,并且有保持图连通的最少的边。 最小生成树可以用kruskal(克鲁斯卡尔)算法或prim(普里姆)算法求...
  • adlics_r
  • adlics_r
  • 2016-12-02 23:03:53
  • 667

最小生成树(kruskal)

  • 2010年08月02日 09:44
  • 1KB
  • 下载
    个人资料
    等级:
    访问量: 4758
    积分: 273
    排名: 28万+
    文章存档