POJ1258Agri-Net
http://poj.org/problem?id=1258
题意 : john当上了镇长,打算给每个农场都连接网络,需要用最小的成本连接其他所有农场,所以要找最少的纤维连在一起,任何两个农场之间的距离不超过十万。输入n,下面有n行n列,代表着每两个农场的距离,对角线为0,因为自己到自己是为0;
解题思路 : 这个题要包含所有的农场,赤果果的最小生成树,这个题的话,注意是多组输入还有数组不要开得太小,算法的话prim和kruskal都可以,我用的是prim。
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int ans,dis[][];
const int INF = << ;
int vis[],n,low[];
int prim()
{
memset(vis,,sizeof(vis));
int i,j,flag,min;
ans = ;
for(i = ; i <= n ; i++)
{
low[i] = dis[][i];
}
vis[] = ;
for(i = ; i <= n ; i++)
{
min = INF;
for(j = ;j <= n ; j++)
{
if(min > low[j]&&!vis[j])
{
min = low[j] ;
flag = j;
}
}
if(min >= INF)
{
flag = - ;
break ;
}
ans+=min ;
vis[flag] = ;
for(j = ; j <= n ; j++)
{
if(dis[flag][j] < low[j] && !vis[j])
low[j] = dis[flag][j];
}
}
return ans ;
}
int main()
{
while(~scanf("%d",&n))
{
for(int i = ; i <= n ; i++)
{
for(int j = ; j <= n ; j++)
{
cin>>dis[i][j] ;
}
}
ans = prim();
cout<<ans<<endl;
}
return ;
}
POJ1258Agri-Net的更多相关文章
- POJ-1258-Agri Ned
链接:https://vjudge.net/problem/POJ-1258#author=fuxianda 题意: 有n个农场,已知这n个农场都互相相通,有一定的距离,现在每个农场需要装光纤,问怎么 ...
- ACM/ICPC 之 四道MST-Prim解法(POJ1258-POJ1751-POJ2349-POJ3026)
四道MST,适合Prim解法,也可以作为MST练习题. 题意包括在代码中. POJ1258-Agri Net 水题 //Prim-没什么好说的 //接受一个邻接矩阵,求MST //Time:0Ms M ...
随机推荐
- mysql max_allowed_packet自动重置为1024 终结解决
背景: 测试环境1台centOS机器,最近一段频繁报“ Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too ...
- javascript中for-in的用法
for(var 变量名 in object) alert(变量名[第n个]) : 如果object是josn对象的话,变量名就是属性名 如果object是数组的话,变量名就是数字下标 例子:JOSN对 ...
- [大牛翻译系列]Hadoop(7)MapReduce:抽样(Sampling)
4.3 抽样(Sampling) 用基于MapReduce的程序来处理TB级的数据集,要花费的时间可能是数以小时计.仅仅是优化代码是很难达到良好的效果. 在开发和调试代码的时候,没有必要处理整个数据集 ...
- 使用VideoView播放、暂停、快进视频
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=&qu ...
- trade 主要前端组件
jQuery Custombox http://www.jqueryfuns.com/resource/view/27
- hibernate数据库配置
在文件夹etc中 ## MySQL #hibernate.dialect org.hibernate.dialect.MySQLDialect #hibernate.dialect org.hiber ...
- WPF 在画布中布局N行N列的实现方法
最近写一个WPF项目,中间有一个实现在画布中排列的问题(整齐摆列几行几列的算法).本人逻辑有点差啊,废了老大功夫才实现,也没啥就牛逼的,就是拿出来分享一下,给需要的同学节省点时间,如果有用的话别忘赞一 ...
- EHCache 实现通用类 CacheManager
package com.zhubaje.api.workflow.ehcache; import java.io.Serializable; import java.util.ArrayList; i ...
- yiibooster+bsie
对于使用yii框架来说,如果使用bootstrap框架的话,现在有一个比较方便的使用途径:yiibooster.官网地址是:http://yii-booster.clevertech.biz/当然,我 ...
- ZOJ 2314 带上下界的可行流
对于无源汇问题,方法有两种. 1 从边的角度来处理. 新建超级源汇, 对于每一条有下界的边,x->y, 建立有向边 超级源->y ,容量为x->y下界,建立有向边 x-> 超级 ...