某地区经过对城镇交通状况的调查,得到现有城镇间快速道路的统计数据,并提出“畅通工程”的目标:使整个地区任何两个城镇间都可以实现快速交通(但不一定有直接的快速道路相连,只要互相间接通过快速路可达即可)。现得到城镇道路统计表,表中列出了有可能建设成快速路的若干条道路的成本,求畅通工程需要的最低成本。

输入格式:

输入的第一行给出城镇数目NN (1< N \le 10001<N≤1000)和候选道路数目M\le 3NM≤3N;随后的MM行,每行给出3个正整数,分别是该条道路直接连通的两个城镇的编号(从1编号到NN)以及该道路改建的预算成本。

输出格式:

输出畅通工程需要的最低成本。如果输入数据不足以保证畅通,则输出“Impossible”。

输入样例1:

6 15
1 2 5
1 3 3
1 4 7
1 5 4
1 6 2
2 3 4
2 4 6
2 5 2
2 6 6
3 4 6
3 5 1
3 6 1
4 5 10
4 6 8
5 6 3

输出样例1:

12

输入样例2:

5 4
1 2 1
2 3 2
3 1 3
4 5 4

输出样例2:

Impossible
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<stack>
#include<queue>
#include<algorithm>
using namespace std;
struct node
{int u,v,w;bool operator < (const node &x)const{return w<x.w;}
} q[1000002];
int e=0;
int fa[100002];
int findset(int x)
{return fa[x]!=x?fa[x]=findset(fa[x]):x;
}
int main()
{int n,m;scanf("%d%d",&n,&m);int i,j;for(i=0;i<m;i++)scanf("%d%d%d",&q[i].u,&q[i].v,&q[i].w);sort(q,q+m);for(i=0;i<=n;i++)fa[i]=i;int ans=0;int cnt=0;int f=0;for(int k=0;k<m;k++){if(findset(q[k].u)!=findset(q[k].v)){fa[fa[q[k].u]]=fa[q[k].v];ans+=q[k].w;cnt++;if(cnt==n-1){f=1;break;}}}if(f)printf("%d",ans);elseprintf("Impossible");return 0;
}

PTA5-2 畅通工程之最低成本建设问题 (克鲁斯卡尔)相关推荐

  1. 畅通工程之最低成本建设问题(30 分)

    这个题目就是一个最小生成树,如果无法构成就输出impossible ,就是构成最小生成树的时候,每选择一条边然后加加,最后统计是否有n-1条就可以. 最小生成树的讲解在我的其他的博客中有提到 #inc ...

  2. 畅通工程之最低成本建设问题 (30分)

    某地区经过对城镇交通状况的调查,得到现有城镇间快速道路的统计数据,并提出"畅通工程"的目标:使整个地区任何两个城镇间都可以实现快速交通(但不一定有直接的快速道路相连,只要互相间接通 ...

  3. 畅通工程//最小生成树prim

    题目: 畅通工程 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total S ...

  4. 【1863】畅通工程 (HDU)

     畅通工程 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Su ...

  5. 题目1024:畅通工程

    /* 题目描述:省政府"畅通工程"的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).经过调查评估,得到的统计表中列出了有可能建 ...

  6. HDUOJ---1863畅通工程

    畅通工程 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  7. HDU 1863 畅通工程

    畅通工程 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  8. Codeup-问题 C: 畅通工程

    题目描述 省政府"畅通工程"的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).经过调查评估,得到的统计表中列出了有可能建设公路 ...

  9. 畅通工程 HDU - 1863

    省政府"畅通工程"的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).经过调查评估,得到的统计表中列出了有可能建设公路的若干条道 ...

最新文章

  1. location.href请求设置头部header_Nginx 是如何处理 HTTP 头部的?
  2. 帝国cms文章页调用当前文章URL如何操作?
  3. 基于FPGrowth挖掘算法的乳腺癌中医症型关联规则挖掘
  4. QEMU/KVM原理概述
  5. Visual C++ 2008入门经典 第九章类的继承和虚函数(二)
  6. java学习--基础知识阶段性总结--多线程
  7. 基于oneAPI的OSU MPI Benchmarks 5.7编译安装
  8. 图像处理算法 之 Hough变换
  9. [内附完整源码和文档] 基于MySql和JSP的题库管理系统
  10. 小米平板1刷los神盾系统
  11. 袁萌记忆中的华罗庚先生
  12. 树莓派CM4+CM IO上手,查看DDR和eMMC容量
  13. 初中数学知识点总结_初中数学知识点
  14. 个人作业 项目alpha版本测试
  15. 清华最新发布的毕业生去向,太卷了吧!
  16. 网络最大流中一般增广路算法(标号法)
  17. 向量叉乘算子、点乘算子与矩阵运算的关系
  18. stream之group分组
  19. python 动态图表 大屏_爱了!Python 动态图表太太太秀了!
  20. 2016年8月25日 星期四 --出埃及记 Exodus 16:26

热门文章

  1. VMware卸载辛酸历程
  2. pdf怎么转换成图片?分享三种途径
  3. 简单移动平均线(Simple Moving Average,SMA) 定义及使用
  4. Android中添加书签(浏览器的收藏)
  5. Mac 触控板或鼠标的光标跟踪灵敏度终端设置
  6. 你说python慢?终端像个黑匣子太丑?...?那是因为你不懂IPython
  7. wap(dopra linux )命令,ftth-华为hg8245终端回收利用配置方法
  8. 铁电存储器F-RAM
  9. GIS的云计算解决方案
  10. 群控软件有哪些?群控软件哪个好?