博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(最小生成树)hdu 3371
阅读量:5162 次
发布时间:2019-06-13

本文共 2023 字,大约阅读时间需要 6 分钟。

Connect the Cities

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)

Total Submission(s): 12557    Accepted Submission(s): 3453

Problem Description
In 2100, since the sea level rise, most of the cities disappear. Though some survived cities are still connected with others, but most of them become disconnected. The government wants to build some roads to connect all of these cities again, but they don’t want to take too much money.  
 

 

Input
The first line contains the number of test cases.
Each test case starts with three integers: n, m and k. n (3 <= n <=500) stands for the number of survived cities, m (0 <= m <= 25000) stands for the number of roads you can choose to connect the cities and k (0 <= k <= 100) stands for the number of still connected cities.
To make it easy, the cities are signed from 1 to n.
Then follow m lines, each contains three integers p, q and c (0 <= c <= 1000), means it takes c to connect p and q.
Then follow k lines, each line starts with an integer t (2 <= t <= n) stands for the number of this connected cities. Then t integers follow stands for the id of these cities.
 

 

Output
For each case, output the least money you need to take, if it’s impossible, just output -1.
 

 

Sample Input
1 6 4 3 1 4 2 2 6 1 2 3 5 3 4 33 2 1 2 2 1 3 3 4 5 6
 

 

Sample Output
1
 

 

Author
dandelion
 
 
有些边已经联通,有些边还未联通。。。
不知道为嘛超时啊啊啊啊啊啊啊啊啊啊啊啊啊
 
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;struct node{ int x,y,w;}e[25005];int n,m,k,cnt,fa[25005];/*int find(int x){ if(x!=fa[x]) fa[x]=find(fa[x]); return fa[x];}*/int find(int x){ while(x!=fa[x]) x=fa[x]; return fa[x];}int Union(int x,int y){ if(x==-1) return 0; int fx,fy; bool flag=false; fx=find(x),fy=find(y); if(fx!=fy) { --cnt; fa[fx]=fy; flag=1; } return flag;}bool cmp(node a,node b){ return a.w

  

转载于:https://www.cnblogs.com/water-full/p/4510002.html

你可能感兴趣的文章
用数据管理过程(3)——可预测级别的量化管理(麦当劳的管理方式)
查看>>
DataGridView的Validating事件注册后删除操作的处理
查看>>
我的IOS学习历程-第七天
查看>>
json的两种表示结构(对象和数组).。
查看>>
iOS Undefined symbols for architecture xxx问题的总结
查看>>
bzoj 3685: 普通van Emde Boas树
查看>>
关于线程池,那些你还不知道的事
查看>>
二分类问题F-score评判指标(转载)
查看>>
JAVA基础之字符串和面向对象
查看>>
大数据R语言简析
查看>>
Ant自己主动编译打包&amp;公布 android项目
查看>>
vc6编译stlport及常见问题
查看>>
week_one-python格式化输出
查看>>
Webservice 从客户端中检测到有潜在危险的 request.form值[解决方法]
查看>>
LNMP详细介绍
查看>>
素数判定算法
查看>>
那些文章
查看>>
AR增强现实席卷而来
查看>>
word记录
查看>>
Hibernate中ManyToMany的第三张表添加其他字段
查看>>