hdu-1102-Constructing Roads(Prim算法模板)
/*
Name:hdu-1102-Constructing Roads
Copyright:
Author:
Date: 2018/4/18 9:35:08
Description:
prime算法模板
*/
#include <iostream>
#include <cstdio>
#include <cstring>
#include <utility>
#include <vector>
using namespace std;
const int MAXN = , INF = 0x3f3f3f3f;
bool v[MAXN];
int N;
int dis[MAXN];
vector<pair<int ,int>> g[MAXN];
int Prim() {
memset(v , , sizeof(v)) ;
for (int i=; i<=N; i++) dis[i] = INF;
dis[] = ;
int ans = ;
for (int i=; i<N; i++) {
int mark = -;
for (int j=; j<N; j++) {
if (!v[j]) {
if (mark == -) mark = j;
else if (dis[j]<dis[mark]) mark = j;
}
}
if (mark == -) break;
v[mark] = ;
ans += dis[mark] ;
for (int j=; j<g[mark].size(); ++j) {
if (!v[g[mark][j].first]) {
int x =g[mark][j].first;
dis[x] = min(dis[x], g[mark][j].second);
}
}
}
return ans;
} int main()
{
// freopen("in.txt", "r", stdin); while (~scanf("%d", &N)) {
for (int i=; i<; i++) {//clear
while (!g[i].empty()) g[i].pop_back();
}
for (int i=; i<N; i++) {
for (int j=; j<N; j++) {
int tmp;
scanf("%d", &tmp);
g[i].push_back(make_pair(j, tmp));
}
}
int q;
cin>>q;
for (int i=; i<=q; i++) {
int a, b;
scanf("%d %d", &a, &b);
a--,b--;
g[a][b].second = g[b][a].second = ;
}
cout<<Prim()<<endl;
}
return ;
}
hdu-1102-Constructing Roads(Prim算法模板)的更多相关文章
- HDU 1102 Constructing Roads, Prim+优先队列
题目链接:HDU 1102 Constructing Roads Constructing Roads Problem Description There are N villages, which ...
- hdu 1102 Constructing Roads (Prim算法)
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1102 Constructing Roads Time Limit: 2000/1000 MS (Jav ...
- HDU 1102(Constructing Roads)(最小生成树之prim算法)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1102 Constructing Roads Time Limit: 2000/1000 MS (Ja ...
- HDU 1102 Constructing Roads (最小生成树)
最小生成树模板(嗯……在kuangbin模板里面抄的……) 最小生成树(prim) /** Prim求MST * 耗费矩阵cost[][],标号从0开始,0~n-1 * 返回最小生成树的权值,返回-1 ...
- hdu 1102 Constructing Roads (最小生成树)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1102 Constructing Roads Time Limit: 2000/1000 MS (Jav ...
- hdu 1102 Constructing Roads(kruskal || prim)
求最小生成树.有一点点的变化,就是有的边已经给出来了.所以,最小生成树里面必须有这些边,kruskal和prim算法都能够,prim更简单一些.有一点须要注意,用克鲁斯卡尔算法的时候须要将已经存在的边 ...
- hdu 1102 Constructing Roads Kruscal
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1102 题意:这道题实际上和hdu 1242 Rescue 非常相似,改变了输入方式之后, 本题实际上更 ...
- HDU 1102 Constructing Roads
Constructing Roads Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Other ...
- HDU 1102 Constructing Roads(kruskal)
Constructing Roads There are N villages, which are numbered from 1 to N, and you should build some r ...
随机推荐
- EasyMock 常见异常
1. java.lang.IllegalStateException: calling verify is not allowed in record state 含义:不允许在记录状态(record ...
- (转) GIS 中地理坐标和屏幕坐标的标准转换方法
from :http://www.cnblogs.com/WonKerr/archive/2010/01/01/Coord_Transform.html 在GIS中,当你拿到一个图层的地理坐标后,如果 ...
- [转]u盘读不出来怎么办大汇总
今天遇到的问题 http://www.upantool.com/jiaocheng/xiufu/2016/9958.html u盘读不出来怎么办大汇总 2016-12-14 21:42 来源: 本站整 ...
- 主攻ASP.NET.4.5.1 MVC5.0之重生:系统角色与权限(一)
数据结构 权限分配 1.在项目中新建文件夹Helpers 2.在HR.Helpers文件夹下添加EnumMoudle.Cs namespace HR.Helpers { public enum Enu ...
- jQuery消息提示框插件Tipso
在线演示 本地下载
- iOS下的WiFi开发
iOS下Wi-Fi开发需要添加依赖库SystemConfiguration.framework,在需要使用Wi-Fi信息的控制器下引入头文件#import <SystemConfiguratio ...
- win10 x64下的DNW驱动不完全安装方法【转】
本文转载自:https://blog.csdn.net/sihaiwenshu/article/details/52503550 一.起因 最新心血来潮想学ARM,JZ2440开发板买回来后就开始折腾 ...
- JMeter学习(八)JDBC Request
[step_1]:“测试计划”--(右键)à添加à线程组: [step_2]:选择step_1中添加的线程组—(右键)à添加à配置元件àJDBC Connection Configuration,添加 ...
- 关于IIntelliJ IDEA(2017)安装和破解
一.下载并安装, IntelliJ IDEA的官网:https://www.jetbrains.com 二.破解. 百度下载一个 JetbrainsCrack-2.6.2.jar 破解补丁.放在你的安 ...
- 语义web相关概念
前言:最近做的项目是自然语言处理相关的,看了一本书<语义web技术基础>,总的来看,接触自然语言处理,语义理解也有差不多一年的时间了.这两天想了一想,自己究竟学到了什么,掌握了哪些新的知识 ...