博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj 2349(最小生成树应用)
阅读量:7192 次
发布时间:2019-06-29

本文共 981 字,大约阅读时间需要 3 分钟。

题目链接:

思路:由于有S个专门的通道,我们可以先求一次最小生成树,然后对于最小生成树上的边从大到小排序,前S-1条边用S-1个卫星通道连接,那么第S大条边就是我们要找的最小的D了。

1 #include
2 #include
3 #include
4 #include
5 #include
6 using namespace std; 7 #define MAXN 555 8 #define inf 1LL<<60 9 10 struct Node{11 int x,y;12 }node[MAXN];13 double map[MAXN][MAXN];14 double lowcost[MAXN];15 double dist[MAXN];16 bool mark[MAXN];17 int n,m;18 19 double Cal(int i,int j)20 {21 double d1=1.0*(node[i].x-node[j].x)*(node[i].x-node[j].x);22 double d2=1.0*(node[i].y-node[j].y)*(node[i].y-node[j].y);23 return sqrt(d1+d2);24 }25 26 int cmp(const double &p,const double &q)27 {28 return p>q;29 }30 31 double Prim(int u0)32 {33 int cnt=0;34 memset(mark,false,sizeof(mark));35 for(int i=1;i<=m;i++){36 lowcost[i]=map[u0][i];37 }38 lowcost[u0]=0;39 mark[u0]=true;40 for(int i=1;i
View Code

 

转载地址:http://bttkm.baihongyu.com/

你可能感兴趣的文章
利用ExpandableListView和gridview 显示可展开折叠菜单导航
查看>>
再看tp
查看>>
SQL Server 2012 还原选项的变化
查看>>
细节之处方显linux真功夫
查看>>
谈谈SQL Server高可用的常见问题
查看>>
Provisioning Services 7.8 入门系列教程之六 手动添加设备
查看>>
技术大牛对程序员招聘的吐槽和建议
查看>>
《未来架构师》的教学范例(2)
查看>>
Exchange 混合部署—Exchange 2007到Exchange 2013迁移
查看>>
C++构造函数和析构函数的学习(一)
查看>>
Redhat更新yum源
查看>>
jmeter企业内训简报
查看>>
你知道测试大牛怎么写测试计划的吗?
查看>>
ios程序在ios5下出现黑屏的问题
查看>>
运维APP番外篇
查看>>
Linux文件系统ext3与ext4主要区别手记
查看>>
系统集中运维管理平台【社区版】
查看>>
利用二层端口安全防止两个三层交换机长距离光纤线路被乱接测试
查看>>
《深度实践KVM》目录、前言、及前3章
查看>>
Windows Docker的有趣事实
查看>>