poj-3522-Slim
来源:互联网 发布:比特币闪电网络简称 编辑:程序博客网 时间:2024/06/10 08:58
#include <iostream>#include<algorithm>#include<stdio.h>#include<string.h>#include<stdlib.h>#include<queue>#include<stack>#include<math.h>using namespace std;#define maxm 110*110#define maxn 110#define eps 0.000001#define zero(x) ((fabs(x)<eps?0:x))#define INF 99999999struct list{ int u; int v; int w; friend bool operator < (const list &a,const list &b) { return a.w<b.w; }}edge[maxm];int f[maxn];int find(int x){ while(x!=f[x])x=f[x]; return x;}int main(){ int n,m,i,j,k; while(~scanf("%d%d",&n,&m)&&(n||m)) { for(i=1;i<=m;i++) { scanf("%d%d%d",&edge[i].u,&edge[i].v,&edge[i].w); } sort(edge+1,edge+m+1); int minn=INF; for(k=1;k<=m;k++) { for(i=1;i<=n;i++)f[i]=i; int l=0; int amin,amax; amin=INF; amax=-1; for(i=k;i<=m;i++) { int a=find(edge[i].u); int b=find(edge[i].v); if(a==b)continue; l++; amin=min(amin,edge[i].w); amax=max(amax,edge[i].w); f[a]=b; if(l==n-1)break; } if(l!=n-1)break; minn=min(minn,amax-amin); } if(minn==INF)cout<<"-1"<<endl; else cout<<minn<<endl; } return 0;}
—————————————————————————————————
本文原创自Slience的csdn技术博客。
本博客所有原创文章请以链接形式注明出处。
欢迎关注本技术博客,本博客的文章会不定期更新。
大多数人想要改造这个世界,但却罕有人想改造自己。
世上没有绝望的处境,只有对处境绝望的人。
————By slience
—————————————————————————————————
0 0
- POJ 3522 Slim Span
- poj 3522 Slim Span
- POJ 3522 Slim Span
- poj 3522 Slim Span
- poj 3522 Slim Span
- poj 3522 Slim Span
- poj 3522 Slim Span
- POJ 3522 Slim Span
- poj-3522-Slim
- poj 3522 Slim Span
- POJ 3522 Slim Span
- poj 3522 Slim Span
- poj 3522 Slim Span
- POJ 3522 Slim Span
- POJ 3522 Slim Span
- poj 3522 Slim Span
- POJ 3522 Slim Span
- POJ 3522Slim Span
- 留言板
- SharePoint 自定义WebPart之间的连接
- java中对ArrayList进行排序
- 应用层各大协议
- 【经典算法】详解 KMP 算法
- poj-3522-Slim
- C++重要知识点小结---1
- C#-sealed 封装类的使用
- vim中快速转换大小写
- C/C++中system()函数详解
- 各种数据类型占的字节数
- 数据结构迷宫问题
- C语言面向对象编程(六):配置文件解析
- opencv的二值化