[kuangbin带你飞]专题六 最小生成树 D POJ 2421
来源:互联网 发布:广东省网络医院在哪里 编辑:程序博客网 时间:2024/06/06 03:45
题目地址:https://vjudge.net/contest/66965#problem/D
思路:最小生成树,对于已连接过的路,提前先放入同一个集合。
AC代码:
#include<iostream>#include<cstdio>#include<algorithm>using namespace std;const int maxn=105;struct pos{ int x,y,z;}E[maxn*maxn];int n;int fa[maxn];int find(int p){ if(p!=fa[p]) fa[p]=find(fa[p]); return fa[p];}bool cmp(pos a,pos b){ return a.z<b.z;}int main(){ while(~scanf("%d",&n)) { fa[0]=0; int m=0; for(int i=1;i<=n;i++) { fa[i]=i; for(int j=1;j<=n;j++) { int temp; scanf("%d",&temp); if(i==j) continue; E[m].x=i; E[m].y=j; E[m++].z=temp; } } sort(E,E+m,cmp); scanf("%d",&n); while(n--) { int a,b; scanf("%d%d",&a,&b); int pa,pb; pa=find(a); pb=find(b); if(pa!=pb) fa[pa]=pb; } int ans=0; for(int i=0;i<m;i++) { int x=E[i].x,y=E[i].y; int fx,fy; fx=find(x); fy=find(y); if(fx!=fy) { ans+=E[i].z; fa[fx]=fy; } } printf("%d\n",ans); }}
0 0
- [kuangbin带你飞]专题六 最小生成树 D POJ 2421
- [kuangbin带你飞]专题六 最小生成树 D
- POJ 2421 HDOJ 1102 Constructing Roads(kuangbin带你飞 专题六:最小生成树)
- 【 题集 】 【kuangbin带你飞】专题六 最小生成树
- [kuangbin带你飞]专题六 最小生成树
- [kuangbin带你飞]专题六 最小生成树 H
- [kuangbin带你飞]专题六 最小生成树A
- [kuangbin带你飞]专题六 最小生成树 C
- POJ 1251 HDU 1301 Jungle Roads(kuangbin带你飞 专题六:最小生成树)
- POJ 1287 Networking (kuangbin带你飞 专题六:最小生成树)
- POJ 1679 The Unique MST(kuangbin带你飞 专题六:最小生成树)
- POJ 1258 Agri-Net(kuangbin带你飞 专题六:最小生成树)
- POJ 2349&&ZOJ 1914 Arctic Network(kuangbin带你飞 专题六:最小生成树)
- POJ 2031 Building a Space Station(kuangbin带你飞 专题六:最小生成树)
- POJ 1789 Truck History(kuangbin带你飞 专题六:最小生成树)
- POJ 1751 Highways(kuangbin带你飞 专题六:最小生成树)
- POJ 3026 Borg Maze(kuangbin带你飞 专题六:最小生成树,完结)
- [kuangbin带你飞]专题六 最小生成树 A POJ 1251
- CentOs7中 nginx 与 memcache的安装
- linux 让你的进程后台运行
- 【poj 2456】 Aggressive cows
- html标签的嵌套规则
- 第七周 OJ总结<3>-百位数分解
- [kuangbin带你飞]专题六 最小生成树 D POJ 2421
- 输入两个数,进行四则运算
- web前端-JavaScript 错误 -020
- 第八周OJ-求连续倒数和
- Maximal Square
- 二分查找以及冒泡排序
- 安卓开发之绘图
- 第八周OJ(2)分数序列
- 第八周 OJ 分数序列求和