Time Limit: 1 second

Memory Limit: 128 MB

【问题描述】

Bessie受雇来到John的农场帮他们建立internet网络。农场有 N (2<= N <= 1,000)牛棚,编号为1..N。John之前已经勘测过,

发现有M(1<=M<=20,000)条可能的连接线路,一条线路是连接某两个牛棚的。每条可能的线路都有一个建设费用C

(1<=C<=100,000)。John当然想花尽量少的钱,甚至克扣Bessie的工钱。

Bessie发现了这点,很生气,决定给John捣乱。她要选择一些线路组成网,但费用却尽可能大。当然网络要能正常工作,也就是

任意两个牛棚之间都是相互可以连通的,并且网络上不能有环,不然John会很容易发现的。

请计算组建这种网络最多可能的费用。

【输入格式】

第一行:两个整数 N M

下面M行:每行3个整数A,B,C。表示一个可能的线路要连接A、B两个牛棚,费用是C。

【输出格式】

只一行,一个整数,即花费最大的费用。如果不可能连接通所有牛棚,输出-1。

17 + 8 + 10 + 7 = 42

Sample Input

5 8

1 2 3

1 3 7

2 3 10

2 4 4

2 5 8

3 4 6

3 5 2

4 5 17

Sample Output

42

【题目链接】:http://noi.qz5z.com/viewtask.asp?id=t047

【题解】



题目其实是要让你求一棵最大生成树;

只要在做最小生成树的时候,把判断的”>”和”<”号换一下就可以了;

给的代码是普利姆算法的;

(中间如果有某个点不能连接,那么它的dis值会为初值)

(如果是克鲁斯卡尔算法的话,那么最后判断依据就是整张图是否联通)

(note:已经进入最小生成树的点不能再更新了!)



【完整代码】

#include <cstdio>
#include <vector>
using namespace std; #define rei(x) scanf("%d",&x)
#define pb push_back
#define rep1(i,x,y) for (int i = x;i <= y;i++) const int MAXN = 1e3+10;
int n,m,dis[MAXN],ans = 0;
vector <int> g[MAXN],w[MAXN];
bool bo[MAXN]; int main()
{
//freopen("F:\\rush.txt","r",stdin);
rei(n);rei(m);
rep1(i,1,m)
{
int x,y,z;
rei(x);rei(y);rei(z);
g[x].pb(y);w[x].pb(z);
g[y].pb(x);w[y].pb(z);
}
rep1(i,1,n)
dis[i] = -2;
dis[1] = 0;
while (true)
{
int ma = -1,k = -1;
rep1(j,1,n)
if (dis[j]>ma && !bo[j])
{
ma = dis[j];
k = j;
}
if (k==-1)
break;
bo[k] = true;
int len = g[k].size();
rep1(j,0,len-1)
{
int y = g[k][j],cost = w[k][j];
if (!bo[y] && dis[y]<cost)
dis[y] = cost;
}
}
rep1(i,1,n)
{
ans+=dis[i];
if (dis[i]==-2)
{
ans = -1;
break;
}
}
printf("%d\n",ans);
return 0;
}

【t047】网络的更多相关文章

  1. Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求

    上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...

  2. Android请求网络共通类——Hi_博客 Android App 开发笔记

    今天 ,来分享一下 ,一个博客App的开发过程,以前也没开发过这种类型App 的经验,求大神们轻点喷. 首先我们要创建一个Andriod 项目 因为要从网络请求数据所以我们先来一个请求网络的共通类. ...

  3. 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法

    如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...

  4. Virtual Box配置CentOS7网络(图文教程)

    之前很多次安装CentOS7虚拟机,每次配置网络在网上找教程,今天总结一下,全图文配置,方便以后查看. Virtual Box可选的网络接入方式包括: NAT 网络地址转换模式(NAT,Network ...

  5. 前端网络、JavaScript优化以及开发小技巧

    一.网络优化 YSlow有23条规则,中文可以参考这里.这几十条规则最主要是在做消除或减少不必要的网络延迟,将需要传输的数据压缩至最少. 1)合并压缩CSS.JavaScript.图片,静态资源CDN ...

  6. 猫哥网络编程系列:HTTP PEM 万能调试法

    注:本文内容较长且细节较多,建议先收藏再阅读,原文将在 Github 上维护与更新. 在 HTTP 接口开发与调试过程中,我们经常遇到以下类似的问题: 为什么本地环境接口可以调用成功,但放到手机上就跑 ...

  7. C# 利用性能计数器监控网络状态

    本例是利用C#中的性能计数器(PerformanceCounter)监控网络的状态.并能够直观的展现出来 涉及到的知识点: PerformanceCounter,表示 Windows NT 性能计数器 ...

  8. nginx源码分析之网络初始化

    nginx作为一个高性能的HTTP服务器,网络的处理是其核心,了解网络的初始化有助于加深对nginx网络处理的了解,本文主要通过nginx的源代码来分析其网络初始化. 从配置文件中读取初始化信息 与网 ...

  9. [原] KVM 虚拟化原理探究(5)— 网络IO虚拟化

    KVM 虚拟化原理探究(5)- 网络IO虚拟化 标签(空格分隔): KVM IO 虚拟化简介 前面的文章介绍了KVM的启动过程,CPU虚拟化,内存虚拟化原理.作为一个完整的风诺依曼计算机系统,必然有输 ...

随机推荐

  1. C#与C++ DLL的交互

    C#与C++交互,总体来说可以有两种方法: 1.利用C++/CLI作为代理中间层 2.利用PInvoke实现直接调用   第一种方法:实现起来比较简单直观,并且可以实现C#调用C++所写的类,但是问题 ...

  2. POJ--1753--Flip Game【DFS】

    链接:http://poj.org/problem? id=1753 题意:一个4*4的方格,有白棋或者黑棋.每次操作是一个位置的颜色翻转,即白变黑.黑变白,而且与它相邻的四个位置的颜色也都跟着改变, ...

  3. Windows 共享无线上网 无法启动ICS服务解决方法(WIN7 ICS服务启动后停止)

    Windows 共享无线上网 无法启动ICS服务解决方法(WIN7 ICS服务启动后停止) ICS 即Internet Connection Sharing,internet连接共享,可以使局域网上其 ...

  4. listview-属性大全

    <ListView <!-- 决定listview里的内容是否从底部开始 -- android:stackFromBottom="true" </Listview ...

  5. zeromq and jzmq

    install c test install jzmq java test Storm UI Cluster Summary Version Nimbus uptime Supervisors Use ...

  6. iOS_04_数据类型、常量、变量

    一.数据 1.什么是数据 * 生活中时时刻刻都在跟数据打交道,比如体重数据.血压数据.股价数据等.在我们使用计算机的过程中,会接触到各种各样的数据,有文档数据,图片数据,视频数据,还有聊天QQ产生的文 ...

  7. C++ tab键实现自动补全输入功能

    一.简介 由于项目中写了个测试的控制台程序,是每次读取一行,即通过getline()来实现的,所以每次必须输入全路径名称,才能实现运行. 大家都觉得麻烦,就写了个tab键自动选择补全的. 目前基本可实 ...

  8. 【CS Round #48 (Div. 2 only)】Water Volume

    [链接]h在这里写链接 [题意] 在这里写题意 [题解] 枚举0在哪个位置就好. [错的次数] 0 [反思] 在这了写反思 [代码] #include <bits/stdc++.h> us ...

  9. [Angular2 Router] Configure Auxiliary Routes in the Angular 2 Router - What is the Difference Towards a Primary Route?

    In this tutorial we are going to learn how we can can configure redirects in the angular 2 router co ...

  10. WPF学习笔记——概述

    如果你选择WPF,多半原因是因为折服于它那震撼性的用户体验.纵观WPF整个知识体系,其内容并不复杂,但却比较细碎,不易理清.以下内容是对WPF部分内容的简单概括,希望读者能够对WPF框架有个大体认识. ...