题意:给你n个点,m条边,k个可以发电的地方,问你最小路径

一开始根本没想到用并查集去做简直是傻*了,

先将所有发电站放入并查集中,然后用kruscal寻找路径,找出来的就是最小路径了。

#include<stdio.h>
#include<string.h>
#include<math.h>
#include<iostream>
#include<queue>
#include<algorithm>
#include<stack>
#include<map>
#define maxn 205
using namespace std;
struct node
{int u,v,dis;
}edge[maxn*maxn];
int father[maxn];
int find(int x)
{if(father[x]==x) return x;else return father[x]=find(father[x]);
}
bool cmp(node a,node b)
{return a.dis<b.dis;
}
int main()
{int t;int cnt=0;scanf("%d",&t);while(t--){int i,j;int n,m,k;int fa;int u,v;int jie;scanf("%d%d%d",&n,&m,&k);for(i=1;i<=n;i++) father[i]=i;scanf("%d",&fa);for(i=2;i<=k;i++){scanf("%d",&jie);father[jie]=fa;}for(i=1;i<=m;i++){scanf("%d%d%d",&edge[i].u,&edge[i].v,&edge[i].dis);}sort(edge+1,edge+m+1,cmp);int ans=0;for(i=1;i<=m;i++){u=edge[i].u;v=edge[i].v;if(find(u)==find(v)) continue;ans+=edge[i].dis;father[father[u]]=father[v];}printf("Case #%d: %d\n",++cnt,ans);}return 0;
}

UVALive 6437相关推荐

  1. java命令 jar文件夹_java中jar命令打包一个文件夹下的所有文件

    (1)首先,必须保证java的所有路径都设置好,在dos提示符下输入jar -help 出现C:\Documents and Settings\dly>jar -help 非法选项:h 用法:j ...

  2. DP UVALive 6506 Padovan Sequence

    题目传送门 /*题意:两行数字,相邻列一上一下,或者隔一列两行都可以,从左到右选择数字使和最大DP:状态转移方程:dp[i][j] = max (dp[i][j], dp[1-i][j-1] + a[ ...

  3. The UVALIVE 7716 二维区间第k小

    The UVALIVE 7716 二维区间第k小 /** 题意:给一个n * n的矩阵,有q个查询每次查询r,c,s,k表示已(r,c)为右上角 大小为s的正方形中 第k小的元素n <= 250 ...

  4. UVALive 8513 lovers 2017 西安区域赛 B 贪心+multiset

    UVALive 8513 有2种人,每个人有自己的权值$A_i$ $B_i$ 当$A_i + B_i >=K$时 两个人可以配对 问最多多少人可以配对 解法 : 把$/{ A_i /}$ 排序 ...

  5. 训练指南 UVALive - 3713 (2-SAT)

    layout: post title: 训练指南 UVALive - 3713 (2-SAT) author: "luowentaoaa" catalog: true mathja ...

  6. 逆序数 UVALive 6508 Permutation Graphs

    题目传送门 1 /* 2 题意:给了两行的数字,相同的数字连线,问中间交点的个数 3 逆序数:第一行保存每个数字的位置,第二行保存该数字在第一行的位置,接下来就是对它求逆序数 4 用归并排序或线段树求 ...

  7. Infinite Fraction Path UVALive - 8207

    Infinite Fraction Path UVALive - 8207 题意: 给你n个数,每个数在0到9之间,每个数的下标一次是0~n-1,然后他所能走到的数为(i^2+1)%n,i为他本身的下 ...

  8. F - Heron and His Triangle UVALive - 8206

    F - Heron and His Triangle UVALive - 8206 题意: 给你应该n,然后求一个最小的t,问长度为t-1,t,t+1所组成的三角形的面积为整数,t>=n 题解: ...

  9. Tree UVALive - 8212

    Tree UVALive - 8212 题意: 有n个点,k个颜色,每个点都要被染色,相同颜色之间的边算是被该颜色覆盖,问有多少边被所有颜色覆盖 题解: 题目给的是无根树,我们可以将1默认为根然后求所 ...

  10. Rabbits UVALive - 8211

    Rabbits UVALive - 8211 题意: n个兔子的位置,兔子每次可以跳到两个兔子之间,问最多可以跳多少下? 题解: 求出所有相邻两数的间隔,然后减去最小间隔就是答案 代码: #inclu ...

最新文章

  1. socket通信(5)4次挥手
  2. 用jdbc连接各数据库驱动
  3. 微型计算机每字节的最高位时,计算机应用基础考试题加答案
  4. 如何制作可以在 MaxCompute 上使用的 crcmod
  5. 跟一个傻逼程序员合作是什么感受?
  6. Java-数据结构与算法-逢3减1
  7. C# winform程序防止前台卡死
  8. 索引超出了数组界限_【每天一题】LeetCode 26. 删除排序数组中的重复项
  9. MySQL之 事务日志: redo和undo
  10. JavaScript中解决Microsoft.XMLHTTP乱码的最简单方法
  11. 1月16日新经济智库大会聚焦数字经济,议程、直播全收藏
  12. linux系统VNC安装包下载,CentOS 7 安装VNC 和 KVM
  13. sip协议详解 系列(三)
  14. 线性电阻软件的伏安特性曲线测试,线性电阻和非线性电阻的伏安特性曲线
  15. PostgreSql扩展(EXTENSION )
  16. 更新显示服务器同步出错,win10系统同步internet时间总是提示同步时出错的解决方案...
  17. Unity Shader 之 环境光
  18. 倒计时软件app排行榜前十名中敬业签超好用
  19. 美国加州大学河滨分校陈雪梅教授北大招聘Co-PI
  20. 经常被问退休金多少,怎么答

热门文章

  1. IDM2018年最新版破解方法
  2. 电脑软件:推荐一款磁盘空间分析工具——WizTree
  3. 按键精灵写小脚本进行校园网自动验证
  4. linux复制文件的命令是什么?
  5. 学习Python的pyecharts的过程中踩到的一些坑
  6. 微信小程序连接“萤石云”
  7. 应用程序无法正常启动(0xc000000d)的解决方法
  8. BAT校招产品经理:52道经典面试问题解答思路
  9. leetcode *1818. 绝对差值和(2021.7.14)
  10. 【新书推荐】【2019】电磁理论和等离子体电子学的工程师手册