POJ 1258 Agri-Net 【Prime】模板题
<题目链接>
题目大意:
给你N*N矩阵,表示N个村庄之间的距离。FJ要把N个村庄全都连接起来,求连接的最短距离(即求最小生成树)。
解题分析:
Prim模板题,类似于这种完全图的情况下,用Prim求最小生成树较Kruskal更优一点。
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <iostream>
using namespace std; #define REP(i,s,t) for(int i=s;i<=t;i++)
const int INF = 0x3f3f3f3f;
const int N = ;
int n,mpa[N][N],vis[N],dis[N*N]; void Prim(){
long long sum=;
memset(vis,,sizeof(vis));
int cur=;vis[cur]=;
REP(i,,n)dis[i]=mpa[cur][i];
REP(i,,n){
int mn=INF,loc;
REP(j,,n){
if(!vis[j]&&mn>dis[j]){
mn=dis[j];
loc=j;
}
}
sum+=mn;
vis[loc]=;
REP(j,,n){
if(!vis[j]&&dis[j]>mpa[loc][j])
dis[j]=mpa[loc][j];
}
}
printf("%lld\n",sum);
} int main(){
while(~scanf("%d",&n)){
memset(mpa,INF,sizeof(mpa));
REP(i,,n) REP(j,,n){
cin>>mpa[i][j];
}
Prim();
}
}
POJ 1258 Agri-Net 【Prime】模板题的更多相关文章
- poj 1251 poj 1258 hdu 1863 poj 1287 poj 2421 hdu 1233 最小生成树模板题
poj 1251 && hdu 1301 Sample Input 9 //n 结点数A 2 B 12 I 25B 3 C 10 H 40 I 8C 2 D 18 G 55D 1 E ...
- POJ 1287 Networking【kruskal模板题】
传送门:http://poj.org/problem?id=1287 题意:给出n个点 m条边 ,求最小生成树的权 思路:最小生树的模板题,直接跑一遍kruskal即可 代码: #include< ...
- POJ 1502 MPI Maelstrom(模板题——Floyd算法)
题目: BIT has recently taken delivery of their new supercomputer, a 32 processor Apollo Odyssey distri ...
- POJ 1470 Closest Common Ancestors (模板题)(Tarjan离线)【LCA】
<题目链接> 题目大意:给你一棵树,然后进行q次询问,然后要你统计这q次询问中指定的两个节点最近公共祖先出现的次数. 解题分析:LCA模板题,下面用的是离线Tarjan来解决.并且为了代码 ...
- POJ 3264 Balanced Lineup(模板题)【RMQ】
<题目链接> 题目大意: 给定一段序列,进行q次询问,输出每次询问区间的最大值与最小值之差. 解题分析: RMQ模板题,用ST表求解,ST表用了倍增的原理. #include <cs ...
- POJ 1330 Nearest Common Ancestors (模板题)【LCA】
<题目链接> 题目大意: 给出一棵树,问任意两个点的最近公共祖先的编号. 解题分析:LCA模板题,下面用的是树上倍增求解. #include <iostream> #inclu ...
- POJ:Dungeon Master(三维bfs模板题)
Dungeon Master Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 16748 Accepted: 6522 D ...
- POJ 3068 运送危险化学品 最小费用流 模板题
"Shortest" pair of paths Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 1215 ...
- POJ:3461-Oulipo(KMP模板题)
原题传送:http://poj.org/problem?id=3461 Oulipo Time Limit: 1000MS Memory Limit: 65536K Description The F ...
随机推荐
- 在DOS中操作MySQL数据库出现中文乱码
1. 问题:最近使用到MySQL数据库操作,在DOS下使用命令行向mysql中插入/读取中文时出现乱码问题. 2. 原因:由于CMD客户端默认编码为GBK,而本人在安装MySQL时设置编码为UTF-8 ...
- ionic3 Injectable 引入NavController
在service里 引入 navcontroller 报错 And I get error No provider for NavController. 一个比较容易解决的方法, import {Io ...
- select前台转义后台取到的值为对应的文本 select同时接受list和map
简单描述:select动态取值 要求是根据后台传过来的值在前台进行转义,emmm干就完了 思路分析:后台同时传过去一个map一个list ,map用来前台转义,list用来获取值,list取到的值相当 ...
- Python实现switch效果
Java中有switch这个东东有的地方使用switch感觉还挺好使,但是Python没有提供switch这个东东,下面我们想办法来完成类似Java和C里面的那种switch效果. Java示例代码: ...
- easyui之自定义字体图标(鼠标覆盖时切换颜色)
项目要求是自定义字体图标,使用easyui框架结构,众所周知easyui强功能弱样式,字体图标其实就是一张图片.要达到切换图标颜色的效果,要么就是有两套图,使用js控制.但是我这个人比较懒,不喜欢做复 ...
- appium如何解决每次都要安装apk的烦恼
1.appium上勾选 No Reset 2.程序加上:capabilities.setCapability("noReset", true); //不需要再次安装 3.命令行 ...
- xxl系列部署启动通用办法
http://10.10.6.186:8080/xxl-job-admin # 编译mvn compile # 清理mvn clean # 打包mvn package # 先清理后编译mvn clea ...
- logstash配置白名单决定去哪个index
input { kafka { bootstrap_servers => "127.0.0.1:9092" client_id => "log" a ...
- 使用openssl创建一个自签名https证书,并配置到nginx里面
公司内网也有这个需求,就简单实现一下. 参考的都是网上的方案,一次过. 1,使用openssl建立服务器私钥(需要输入密码,请记住这个密码)生成RSA密钥 >openssl genrsa -de ...
- C#学习-类和结构
类和结构体,对两者进行比较 语法上的区别在于,定义类要使用关键字class,而定义结构体则使用关键字struct; 结构体中不可对声明字段进行初始化,但类可以: 如果没有为类显式地定义构造函数,C#编 ...