zoukankan      html  css  js  c++  java
  • P1546 最短网络 Agri-Net

    最小生成树模板。

    注意输入的不同,还有数组开大。

    #include<iostream>
    #include<cstdio>
    #include<cmath>
    #include<algorithm>
    #include<cstring>
    using namespace std;
    
    int n,x,t,ans;
    int fa[102*102];
    
    struct node{
    	int u,v,w;
    }e[102*102];
    
    bool cmp(node x,node y)
    {
    	return x.w <y.w ;
    } 
    
    int find(int x)
    {
    	if(fa[x]==x) return x;
    	else return fa[x]=find(fa[x]);
    }
    
    int main()
    {
    	//freopen("2.in","r",stdin);
    	//freopen("2.out","w",stdout);
    	scanf("%d",&n);
    	for(int i=1;i<=n;++i)
    		fa[i]=i;
    	for(int i=1;i<=n;++i)
    		for(int j=1;j<=n;++j)
    		{
    			scanf("%d",&x);
    			if(i!=j)
    			{
    				t++;
    				e[t].u =i;
    				e[t].v =j;
    				e[t].w =x;
    			}
    		}
    	sort(e+1,e+t+1,cmp);
    	for(int i=1;i<=t;++i)
    	{
    		int dx=find(e[i].u );
    		int dy=find(e[i].v );
    		if(dx==dy) continue;
    		ans+=e[i].w ;
    		fa[dx]=dy;
    	}	
    	printf("%d",ans);
    	return 0;
    }
    

    如果你不开心,那我就把右边这个帅傻子分享给你吧,   

    你看,他这么好看,那么深情的望着你,你还伤心吗?   

    真的!这照片盯上他五秒钟就想笑了。   

    一切都会过去的。  

  • 相关阅读:
    PHPEXCEL 导出多个sheet
    android adb.exe端口占用
    imageview 显示assets的图片

    Java中日期问题
    java中的定时器的实现样例
    Oracle数据库如何干净的删除
    MySQL索引相关知识
    JavaScript基础知识总结
    JDBC技术总结
  • 原文地址:https://www.cnblogs.com/Mary-Sue/p/9832288.html
Copyright © 2011-2022 走看看