#include<stdio.h>
#define MAXN 1005
#include<iostream>
#include<algorithm>
#define inf 10000000
using namespace std;
int _m[MAXN][MAXN];
int low_cost[MAXN];
int pre[MAXN];
unsigned prime(int n);
int DFS(int i,int sum,int p);
bool mark[MAXN];
int main()
{
//freopen("acm.acm","r",stdin);
int p;
int edge;
unsigned tem;
int i;
int j;
int u;
int v;
while(cin>>p>>edge)
{
memset(mark,false,sizeof(mark));
for(i = ; i < p; ++ i)
{
for(j = ; j < p; ++ j)
_m[i][j] = inf;
}
for(i = ; i < edge; ++ i)
{
cin>>u>>v;
-- u;
-- v;
cin>>tem;
if(_m[u][v] == inf)
{
_m[u][v] = tem;
_m[u][v] *= -;
_m[v][u] = _m[u][v];
}
else
if(tem > _m[u][v]*(-))
{
_m[u][v] = tem;
_m[u][v] *= -;
_m[v][u] = _m[u][v];
}
}
mark[] = true;
tem = -prime(p);
if(DFS(,,p) == p)
cout<<tem<<endl;
else
cout<<-<<endl;
}
}
int DFS(int i,int sum,int n)
{
int j;
for(j = ; j < n; ++ j)
{
if(i != j && _m[i][j] != inf && !mark[j])
{
mark[j] = true;
sum = DFS(j,sum+,n);
}
}
return sum;
}
unsigned prime(int n)
{
int i;
int j;
int k;
unsigned sum = ;
int min;
for(i = ; i < n; ++ i)
{
low_cost[i] = _m[][i];
pre[i] = ;
}
for(i = ; i < n; ++ i)
{
min = inf;
for(j = ; j < n; ++ j)
{
if(low_cost[j]&&low_cost[j] < min)
{
k = j;
min = low_cost[j];
}
}
sum += low_cost[k];
low_cost[k] = ;
for(j = ; j < n; ++ j)
{
if(_m[k][j] < low_cost[j] && low_cost[j])
{
low_cost[j] = _m[k][j];
pre[j] = k;
}
}
}
return sum;
}

POJ 2377的更多相关文章

  1. poj 2377 Bad Cowtractors

    题目连接 http://poj.org/problem?id=2377 Bad Cowtractors Description Bessie has been hired to build a che ...

  2. poj - 2377 Bad Cowtractors&&poj 2395 Out of Hay(最大生成树)

    http://poj.org/problem?id=2377 bessie要为FJ的N个农场联网,给出M条联通的线路,每条线路需要花费C,因为意识到FJ不想付钱,所以bsssie想把工作做的很糟糕,她 ...

  3. MST:Bad Cowtractors(POJ 2377)

    坏的牛圈建筑 题目大意:就是现在农夫又要牛修建牛栏了,但是农夫想不给钱,于是牛就想设计一个最大的花费的牛圈给他,牛圈的修理费用主要是用在连接牛圈上 这一题很简单了,就是找最大生成树,把Kruskal算 ...

  4. poj 2377 Bad Cowtractors(最大生成树!)

    Description Bessie has been hired to build a cheap internet network among Farmer John's N (2 <= N ...

  5. POJ 2377 Bad Cowtractors (Kruskal)

    题意:给出一个图,求出其中的最大生成树= =如果无法产生树,输出-1. 思路:将边权降序再Kruskal,再检查一下是否只有一棵树即可,即根节点只有一个 #include <cstdio> ...

  6. poj 2377 Bad Cowtractors (最大生成树prim)

    Bad Cowtractors Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 131072/65536K (Java/Other) To ...

  7. poj 2377 拉最长的线问题 kruskal算法

    题意:建光纤的时候,拉一条最长的线 思路:最大生成树 将图的n个顶点看成n个孤立的连通分支,并将所有的边按权从大到小排 边权递减的顺序,如果加入边的两个端点不在同一个根节点的话加入,并且要将其连通,否 ...

  8. POJ - 2377 Bad Cowtractors Kru最大生成树

    Bad Cowtractors Bessie has been hired to build a cheap internet network among Farmer John's N (2 < ...

  9. POJ 2377 (并查集+sort求最远路)

    Description Bessie has been hired to build a cheap internet network among Farmer John's N (2 <= N ...

随机推荐

  1. JavaScript 代码小片段

    1.获取对象 obj 的所有属性(自有属性和继承属性),保存到数组 lst 中 //获取对象obj的所有属性(自有属性和继承属性),保存到数组lst 中 var lst = []; function ...

  2. 2018.10.12 bzoj4712: 洪水(树链剖分)

    传送门 树链剖分好题. 考虑分开维护重儿子和轻儿子的信息. 令f[i]f[i]f[i]表示iii为根子树的最优值,h[i]h[i]h[i]表示iii重儿子的最优值,g[i]g[i]g[i]表示iii所 ...

  3. 2018.10.01 bzoj3237: [Ahoi2013]连通图(cdq分治+并查集)

    传送门 cdq分治好题. 对于一条边,如果加上它刚好连通的话,那么删掉它会有两个大集合A,B.于是我们先将B中禁用的边连上,把A中禁用的边禁用,再递归处理A:然后把A中禁用的边连上,把B中禁用的边禁用 ...

  4. 2018.07.08 NOIP模拟 第K小数(二分)

    第K小数 题目背景 SOURCE:NOIP2016-AHSDFZ T1 题目描述 有两个正整数数列,元素个数分别为 N 和 M .从两个数列中分别任取一个数相乘,这样一共可以得到 N*M 个数,询问这 ...

  5. 配置使用sourcemap调试vue源码爬坑

    环境: Google Chrome  V72.0.3626.109 vue-dev V 2.6.10 爬坑的乐趣就不说了(我恨啊),以下说一下出坑要点 1. 在vue-dev的package.json ...

  6. 添加安全认证的webservice

    添加个Key类继承SoapHeader public class KEY : SoapHeader{    public KEY()    {        //        //TODO: 在此处 ...

  7. 用 PHP 编写 http 服务器

    概述 众所周知,我们一般使用 PHP 开发Web程序时需要使用到比如Apache或Nginx等Web服务器来支持,那么有没有办法直接使用PHP开发HTTP服务器,答案当然是可以的,最近看了一遍Work ...

  8. Ansible组件之inventory主机清单

    静态inventory 所有的主机信息都存放在Ansible的inventory组件里面,默认Ansible的inventory是一个静态的ini格式的文件/etc/ansible/hosts,当然还 ...

  9. alpha七天冲刺计划(更新ing)

    alpha七天冲刺计划 第一天: http://note.youdao.com/noteshare?id=ff0c24feec21b1d74a176a0d88815933 第二天: http://no ...

  10. MVC批量上传文件

    初始图片: 选中图片后 ---------------------------------------------------------------------------------- 前端代码 ...