题目链接:

  http://poj.org/problem?id=2349

题目大意:

  有n个警戒部队,现在要把这n个警戒部队编入一个通信网络,

  有两种方式链接警戒部队:1,用卫星信道可以链接无穷远的部队.

              2,用信号收发器可以链接周围d米以内的部队.

  现在有s个卫星信道,问d最小是多少时能连接全部的警戒部队?

解题思路:

  我是用求最小生成树,记录路径长度,对路径长度排序后,第k长的边就是答案,

  但是队友是用最小k度限制生成树,因为我的方法它证明不了,也推翻不了~~~~,

  最后我下去仔细想了想反证法还是可以证明的。

证明:

  假设:先假设最小生成树的第k大边不是最优解。

  证:现在有一MST,我从中删除了一条第k大的边s,则MST变成了两个联通分支,根据假设存在一条s'<s,可以使两个联通分支连起来变成联通树MST',因为s'<s,则MST'<MST,可得出假设不成立!!!!

 #include <cmath>
#include <string>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std; const int maxn = ;
const int INF = 0x3f3f3f3f;
const double Exp = 1e-; struct point
{
int x, y;
int length(point a)
{
return (a.x - x)*(a.x - x) + (a.y - y)*(a.y - y);
}
}; int cost[maxn+][maxn+], lowc[maxn+];
int vis[maxn+], num[maxn+]; void init ()
{
for (int i=; i<maxn+; i++)
for (int j=; j<maxn; j++)
cost[i][j] = INF;
}
int prim (int n)
{
int i, j;
memset (vis, , sizeof(vis));
vis[] = ;
for (i=; i<n; i++)
lowc[i] = cost[][i];
for (i=; i<n; i++)
{
int p, mini = INF;
for (j=; j<n; j++)
if (!vis[j] && lowc[j] < mini)
{
p = j;
mini = lowc[j];
}
vis[p] = ;
for (j=; j<n; j++)
{
if (!vis[j])
lowc[j] = min(lowc[j], cost[p][j]);
}
}
} int main ()
{
int n, s, p;
point P[maxn + ];
scanf ("%d", &n);
while (n --)
{
scanf ("%d %d", &s, &p);
for (int i=; i<p; i++)
{
scanf ("%d %d", &P[i].x, &P[i].y);
for (int j=; j<i; j++)
cost[i][j] = cost[j][i] = P[i].length(P[j]);
}
prim (p);
sort (lowc, lowc+p, greater<int>());
printf ("%.2f\n", sqrt(lowc[s-]));
}
return ;
}

poj 2349 Arctic Network(最小生成树的第k大边证明)的更多相关文章

  1. POJ 2349 Arctic Network(最小生成树+求第k大边)

    题目链接:http://poj.org/problem?id=2349 题目大意:有n个前哨,和s个卫星通讯装置,任何两个装了卫星通讯装置的前哨都可以通过卫星进行通信,而不管他们的位置. 否则,只有两 ...

  2. POJ 2349 Arctic Network (最小生成树)

    Arctic Network Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Subm ...

  3. poj 2349 Arctic Network 最小生成树,求第k大条边

    题目抽象出来就是有一些告诉坐标的通信站,还有一些卫星,这些站点需要互相通信,其中拥有卫星的任意两个站可以不用发射器沟通,而所有站点的发射器要都相同,但发射距离越大成本越高. 输入的数据意思: 实例个数 ...

  4. poj 2349 Arctic Network

    http://poj.org/problem?id=2349 Arctic Network Time Limit: 2000MS   Memory Limit: 65536K Total Submis ...

  5. POJ 2349 Arctic Network (最小生成树)

    Arctic Network 题目链接: http://acm.hust.edu.cn/vjudge/contest/124434#problem/F Description The Departme ...

  6. Poj 2349 Arctic Network 分类: Brush Mode 2014-07-20 09:31 93人阅读 评论(0) 收藏

    Arctic Network Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 9557   Accepted: 3187 De ...

  7. POJ 2349 Arctic Network(最小生成树,第k大边权,基础)

    题目 /*********题意解说——来自discuss——by sixshine**************/ 有卫星电台的城市之间可以任意联络.没有卫星电台的城市只能和距离小于等于D的城市联络.题 ...

  8. POJ 2349 Arctic Network(最小生成树中第s大的边)

    题目链接:http://poj.org/problem?id=2349 Description The Department of National Defence (DND) wishes to c ...

  9. POJ 2349 Arctic Network(贪心 最小生成树)

    题意: 给定n个点, 要求修p-1条路使其连通, 但是现在有s个卫星, 每两个卫星可以免费构成连通(意思是不需要修路了), 问修的路最长距离是多少. 分析: s个卫星可以代替s-1条路, 所以只要求最 ...

随机推荐

  1. Callable线程

    写一个Callable线程 import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; im ...

  2. Android调试工具_ Stetho

    Stetho是Facebook开源的一个Android平台调试工具. Stetho能实如今不root手机的情况下,通过Chrome查看App的布局,Sqlite,SharedPreference.Ne ...

  3. IO流-获取指定目录下文件夹和文件对象【File类】

    一.运用File类实现获取指定目录下文件夹和文件对象 1.File类 2.方法: 获取文件绝对路径 :getAbsolutePath 案例: import java.io.File; /** * 获取 ...

  4. mysql + Fluently NHibernate + WebAPI + Autofac

    MySQL.Fluently NHibernate.WebAPI.Autofac,对我来说每一个都是麻烦疙瘩,现在它们为了一个共同的项目而凑合到一起了.一路磕磕碰碰,现在貌似有了一点眉目. 作为一个步 ...

  5. jsp useBean

    <jsp:uesBean id="test" scope="page" class="test.useBeanTest"> 用于 ...

  6. 【转】 Android Studio --“Cannot resolve symbol” 解决办法

    Android Studio 无法识别同一个 package 里的其他类,将其显示为红色,但是 compile 没有问题.鼠标放上去后显示 “Cannot resolve symbol XXX”,重启 ...

  7. 《CMake实践》笔记二:INSTALL/CMAKE_INSTALL_PREFIX【转】

    本文转载自:http://www.cnblogs.com/52php/p/5681751.html 四.更好一点的Hello World 没有最好,只有更好 从本小节开始,后面所有的构建我们都将采用  ...

  8. casperjs userAgent的一些问题

    casperjs 的options内的userAgent若设置为非正常浏览器的字符串,可能导致form无法正确提交. 表现为,this.click()失效,或evaluate(function(){$ ...

  9. 小幻美图 API

    『不忘初心,方得始终.』 小幻美图 API 更新:2015.03.29 目前提供的API共有10种! 必应各种今日获取API共4种! 本站收录图片获取API共4种! 网络图片尺寸修改API共1枚! 百 ...

  10. CentOS 6 网络设置修改 指定IP地址 DNS 网关

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G) 系统版本:Centos-6.5-x86_64 路由器网关:192.168.1.1 步骤: 1.查看网络MAC地址 [ro ...