Constructing Roads

这道题很水,就是一个裸的最小生成树,最不过把已经连接的节点的值再设为0。

代码:

 #include<cstdio>
#include<cstring>
#define N 1010
int dis[N][N],minn[N],n,m,a,b;
bool u[N];
int main(){
scanf("%d",&n);
for(int i=;i<=n;++i)
for(int j=;j<=n;++j)
scanf("%d",&dis[i][j]);
scanf("%d",&m);
for(int i=;i<=m;++i){
scanf("%d%d",&a,&b);
dis[a][b]=;
dis[b][a]=;
}
memset(minn,0x7f,sizeof(minn));
minn[]=;
memset(u,,sizeof(u));
for(int i=;i<=n;++i){
int k=;
for(int j=;j<=n;++j)
if(u[j]&&(minn[j]<minn[k]))
k=j;
u[k]=;
for(int j=;j<=n;j++)
if(u[j]&&(dis[k][j]<minn[j]))
minn[j]=dis[k][j];
}
int total=;
for(int i=;i<=n;++i)
total+=minn[i];
printf("%d",total);
return ;
}

POJ2421 Constructing Roads的更多相关文章

  1. HDU1102&&POJ2421 Constructing Roads 2017-04-12 19:09 44人阅读 评论(0) 收藏

    Constructing Roads Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) ...

  2. POJ2421 Constructing Roads【最小生成树】

    题意: 有N个点,有些点已经连接了,然后求出所有点的连接的最短路径是多少. 思路: 最小生成树的变形,有的点已经连接了,就直接把他们的权值赋为0,一样的就做最小生成树. 代码: prime: #inc ...

  3. 【kruscal】【最小生成树】poj2421 Constructing Roads

    SB题,求最小生成树,其中有些边已经给您建好啦. 随意暴力即可. #include<cstdio> #include<algorithm> #include<cstrin ...

  4. POJ2421 Constructing Roads 最小生成树

    修路 时限: 2000MS   内存限制: 65536K 提交总数: 31810   接受: 14215 描述 有N个村庄,编号从1到N,您应该修建一些道路,使每两个村庄可以相互连接.我们说两个村庄A ...

  5. Constructing Roads——F

    F. Constructing Roads There are N villages, which are numbered from 1 to N, and you should build som ...

  6. Constructing Roads In JGShining's Kingdom(HDU1025)(LCS序列的变行)

    Constructing Roads In JGShining's Kingdom  HDU1025 题目主要理解要用LCS进行求解! 并且一般的求法会超时!!要用二分!!! 最后蛋疼的是输出格式的注 ...

  7. [ACM] hdu 1025 Constructing Roads In JGShining's Kingdom (最长递增子序列,lower_bound使用)

    Constructing Roads In JGShining's Kingdom Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65 ...

  8. HDU 1102 Constructing Roads

    Constructing Roads Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  9. Constructing Roads (MST)

    Constructing Roads Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u ...

随机推荐

  1. servlet生命周期:

    Servlet生命周期分为三个阶段: 1,初始化阶段  servlet实例创建时调用init()方法,在Servlet的整个生命周期内,init()方法只被调用一次. 2,响应客户请求阶段 调用ser ...

  2. js中关于this的理解

    常见:在普通函数中的this,指向 全局 function thisObj(name){ this.name = name; console.log(this); } 但是在严格模式下的函数,this ...

  3. AJPFX简述Scanner类的特点

    hasNextInt() :判断是否还有下一个输入项,其中Xxx可以是Int,Double等.如果需要判断是否包含下一个字符串,则可以省略Xxx        nextInt(): 获取下一个输入项. ...

  4. iframe及其引出的页面跳转问题

    前提:在前一段的工作中碰到了一些页面跳转,子页面跳到父页面上的等等问题,当时页面总是跳不对,或者跳错,要不就是不需要重新打开窗口,却又重新打开一个了,特此搜寻网上各大博客论坛,加上项目经验整理一篇文章 ...

  5. P1967 货车运输 未完成

    #include<iostream> #include<cstdio> #include<cstring> #include<cmath> #inclu ...

  6. java实现课堂随机点名小程序

    通过jdbc连接数据库实现读取学生花名册进行随机点名! ~jdbc连接mysql数据库  ||  注释部分代码可通过读取.txt文档实现显示学生信息 ~通过点击开始按钮实现界面中间标签不断更新学生信息 ...

  7. 获取登陆信息 在created()方法中

    // 获取登录信息 public async InitUser() { await sj.globalVar.Init(true); this.params.unitId = sj.globalVar ...

  8. 应用开始界面简单倒计时的dialog

    activity_main.xml 下面图片显示的还要在activity_main.xml里面加个TextView <?xml version="1.0" encoding= ...

  9. 判断空间上三个点是否共线问题【找bug篇】

    判断空间上三个点是否在同一直线上[找bug篇] 作者:Vashon 时间:20150601   发布时间:20150718 一.拿到问题,首先分析并理清思路. 判断三点是否在同一条直线上需满足以下几点 ...

  10. 解决./mysql-bin.index’ not found (Errcode: 13)

    问题出现在升级php版本以后,网站无法连接数据库,phpMyAdmin无法登录: 然后尝试开启mysql,/etc/init.d/mysqld start ,提示: Starting MySQL. E ...