#include<stdio.h>

#include<algorithm>

#define N (100 + 10)

using namespace std;

typedef struct

{

   int x ,y ,c;

}NODE;

NODE node[N*N];

int  map[N][N];

int  mer[N];

int finds(int x)

{

   return x == mer[x] ? x : mer[x] = finds(mer[x]);

}

bool camp(NODE a ,NODE b)

{

   return a.c < b.c;

}

int main ()

{

   int n ,i ,j;

   while(~scanf("%d" ,&n))

   {

      int nowid = 0;

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

      {

         for(j = 1 ;j <= n ;j ++)

         scanf("%d" ,&map[i][j]);

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

         {

            nowid++;

            node[nowid].c = map[i][j];

            node[nowid].x=  i ,node[nowid].y = j;

         }

         mer[i] = i;

      }

      

      int Ans = 0 ,sum = 0;

      sort(node + 1 ,node + nowid + 1 ,camp);

      for(i = 1 ;i <= nowid ;i ++)

      {

         if(node[i].x == node[i].y) continue;

         int xx = finds(node[i].x);

         int yy = finds(node[i].y);

         if(xx != yy) Ans += node[i].c ,sum ++ ,mer[xx] = yy;

         if(sum == n - 1) break;

      }

      printf("%d\n" ,Ans);

   }

   return 0;

}

            

      

      

   

   

POJ1258简单最小生成树的更多相关文章

  1. hdu1102 Constructing Roads (简单最小生成树Prim算法)

    Problem Description There are N villages, which are numbered from 1 to N, and you should build some ...

  2. POJ1258 基础最小生成树

    本文出自:http://blog.csdn.net/svitter 题意:给出一个数字n代表邻接矩阵的大小,随后给出邻接矩阵的值.输出最小生成树的权值. 题解: prime算法的基本解法: 1.选择一 ...

  3. POJ1258 (最小生成树prim)

    Agri-Net Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 46319   Accepted: 19052 Descri ...

  4. 51nod-1640--天气晴朗的魔法(简单最小生成树)

    1640 天气晴朗的魔法 题目来源: 原创 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题 这样阴沉的天气持续下去,我们不免担心起他的健康. 51nod魔法学校近日 ...

  5. poj1258 Agri-Net 最小生成树

    Agri-Net Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 44032   Accepted: 18001 Descri ...

  6. hud3371 Connect the Cities 简单最小生成树

    //我看过Discuss说不能用克鲁斯卡尔因为有很多边 //但是只能用G++过,C++的确超时 #include <stdio.h> #include <string.h> # ...

  7. HDU4463-Outlets,简单最小生成树。1A水过~~

    Outlets                                                                                             ...

  8. 最小生成树练习3(普里姆算法Prim)

    风萧萧兮易水寒,壮士要去敲代码.本女子开学后再敲了.. poj1258 Agri-Net(最小生成树)水题. #include<cstdio> #include<cstring> ...

  9. hpuoj 问题 C: 善良的国王【最小生成树kurskal】

    问题 C: 善良的国王 时间限制: 1 Sec  内存限制: 128 MB提交: 112  解决: 48[提交][状态][讨论版] 题目描述 很久很久以前,有一个贫困的国家,这个国家有一个善良爱民的国 ...

随机推荐

  1. (数据科学学习手札110)Python+Dash快速web应用开发——静态部件篇(下)

    本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 这是我的系列教程Python+Dash快速web ...

  2. 关于PHP的表单数组提交显示

    1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title></title> 5 <meta chars ...

  3. 开源大屏工具 DataGear 的使用

    记录一款好用的大屏工具,DataGear,官方标记为"开源免费的数据可视化分析平台". 其支持的数据集可以为SQL或HTTP API等,SQL支持MySQL等关系型数据库及Hive ...

  4. .Net Core 2.1 升级3.1 问题整理

    随着技术的不断拓展更新,我们所使用的技术也在不断地升级优化,项目的框架也在不断地升级,本次讲解 .net core 2.1  升级到3.1所需要注意的事项: 当项目框架升级后,所有的Nuget引用也会 ...

  5. TensorFlow2.0使用方法

    TensorFlow2.0 1 使用技巧 更新到最新版本: pip install --upgrade tensorflow pip install --upgrade tensorflow-gpu ...

  6. java注解基础入门

    前言 这篇博客主要是对java注解相关的知识进行入门级的讲解,包括**,核心内容主要体现在对java注解的理解以及如何使用.希望通过写这篇博客的过程中让自己对java注解有更深入的理解,在工作中可以巧 ...

  7. IPFS挖矿赚钱吗?IPFS挖矿是真的吗?

    IPFS一出现就获得了极高的关注度,「让人类信息永存」的口号也让其蒙上了一层神秘的面纱.今天我就来给大家自剖析,一探IPFS技术的真相. IPFS是一个去中心化存储网络,而Filecoin是IPFS激 ...

  8. 《C++反汇编与逆向分析技术揭秘》--认识启动函数,找到用户入口

    <C++反汇编与逆向分析>和<程序员的自我修养>都是以VC6的代码作为例子讲解的.这里是在vs2017下,CRT代码有些区别,但整体流程上都是初始化环境,设置参数,最后转到用户 ...

  9. 攻防世界 maze NJUPT CTF 2017

    迷宫题 1 __int64 __fastcall main(__int64 a1, char **a2, char **a3) 2 { 3 signed __int64 mid_i; // rbx 4 ...

  10. CodeForces CF862E题解

    \(Part\ 1:\) 我们发现每次修改动的是\(a\)串,所以对于这个答案的公式,\(b_{i+j}\)的部分是可以求出来的.所以我们可以把公式改成如下所示: \(f(j)=|\sum_{i=1} ...