hdu1233(floyd+并查集)
来源:互联网 发布:中国第一家网络银行 编辑:程序博客网 时间:2024/05/17 08:35
用最短距加并查集写出了最小树的效果
留个纪念吧~
#include <iostream>
using namespace std;
#define INF 10000
int a[1000][1000],n,d[INF];
int pre[105],sum;
void Init()
{
for(int i=0;i<=150;i++)
{
for(int j=0;j<150;j++)
{
if(i==j)
a[i][j]=0;
else
a[i][j]=INF;
}
}
}
void floyd()
{
for(int k=1;k<=n;k++)
{
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
if(a[i][j]>a[i][k]+a[k][j])
a[i][j]=a[i][k]+a[k][j];
}
}
}
}
int find(int x)
{
int r=x;
while(pre[r]!=r)
r=pre[r];
int i=x,j;
while(pre[i]!=r)
{
j=pre[i];
pre[i]=r;
i=j;
}
return r;
}
void mix(int x,int y)
{
int r=find(x);
int l=find(y);
if(l!=r)
pre[l]=r;
}
void insert()
{
while(1)
{
int min=100000,ii,jj,c,b;
int flag=0;
for(int i=1;i<=n;i++)
{
for(int j=i+1;j<=n;j++)
{
if(min>a[i][j])
{
c=find(i);
b=find(j);
if(c!=b)
{
ii=i;
jj=j;
min=a[i][j];
flag=1;
}
}
}
}
if(flag==0)
break;
c=find(ii);
b=find(jj);
//printf("%d->%d %d->%d\n",ii,c,jj,b);
sum+=min;
mix(ii,jj);
a[ii][jj]=100005;
}
}
int main()
{
int i,j,w;
while(~scanf("%d",&n)&&n!=0)
{
Init();
int m=n*(n-1)/2;
for(int k=0;k<m;k++)
{
scanf("%d %d %d",&i,&j,&w);
a[i][j]=a[j][i]=w;
}
floyd();
for(int i=1;i<=n;i++)
pre[i]=i;
sum=0;
insert();
cout<<sum<<endl;
/*for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
printf("%d ",a[i][j]);
printf("\n");
}*/
}
return0;
}
- hdu1233(floyd+并查集)
- HDU1233并查集
- hdu1233 并查集+Kruskal
- HDU1233 还是畅通工程(并查集)
- 并查集 + Floyd
- HDU1233--还是畅通工程--最小生成树--并查集
- 还是畅通工程(hdu1233)并查集应用
- HDU1233:畅通工程3(并查集)
- 并查集或图floyd-2
- 【并查集入门专题1】A+B+D 三道模板题 hdu1232 hdu1233 poj2524【并查集模板】
- HDU1233最小生成树之kruskal算法加并查集
- codeforces#234_div2_D Dima and Bacteria floyd+并查集
- Pilot Work Experience (URAL 1888 并查集+floyd)
- USACO Section 2.4 Cow Tours (Floyd+并查集)
- New Year Permutation(Floyd+并查集)
- poj 1797 并查集 / floyd(超时)
- 51nod 1366 贫富差距【并查集+Floyd】
- pat L2-010. 排座位 floyd 或 并查集
- poj 2406 Power Strings【kmp循环节】
- 3ds MAX 2014安装指南
- Activiti 生成图片乱码问题解决备忘录
- Android 7.0 行为变更 通过FileProvider在应用间共享文件吧
- 从JDK源码角度看Integer
- hdu1233(floyd+并查集)
- 回首
- python基础--list[]
- Git Flow工作流
- HTTP常见请求和响应头
- BIM的特性_国建融科合创及BIM数据库
- network研究样本
- 虚拟机升级扩展磁盘
- 数据库分页