Eddy's picture
来源:互联网 发布:淘宝无线视频无法订购 编辑:程序博客网 时间:2024/06/14 10:26
http://acm.hdu.edu.cn/showproblem.php?pid=1162
#include<iostream>
#include<cmath>
#include<algorithm>
using namespace std;
struct edge
{
int a,b;
double c;
};
int route[10010];
edge ans[10010];
int f[110];
int get(int x)
{
if(f[x]==x)
return x;
else
{
f[x]=get(f[x]);
return f[x];
}
}
bool merge(int x,int y)
{
int u=get(f[x]);
int v=get(f[y]);
if(u!=v)
{
f[v]=u;
return true;
}
return false;
}
bool cmp(edge x,edge y)
{
if(x.c<y.c)
return true;
else
return false;
}
int main()
{
int n,i,j,k;
double a[110],b[110];
while(cin>>n)
{
for(i=1;i<=n;i++)
cin>>a[i]>>b[i];
k=1;
for(i=1;i<=n;i++)
for(j=i+1;j<=n;j++)
{
ans[k].a=i;
ans[k].b=j;
double temp=(a[i]-a[j])*(a[i]-a[j])+(b[i]-b[j])*(b[i]-b[j]);
ans[k++].c=sqrt(temp);
}
sort(ans+1,ans+k,cmp);
int count=0;
double sum=0;
for(i=1;i<=n;i++)
f[i]=i;
for(i=1;i<k;i++)
{
if(merge(ans[i].a,ans[i].b))
{
count++;
sum+=ans[i].c;
}
if(count==n-1)
break;
}
printf("%.2f\n",sum);
}
return 0;
}
- Eddy's picture hdu1162
- HDOJ Eddy's picture
- hdoj1162 Eddy's picture
- Eddy's Picture(Hdu1162)
- HDU1162 Eddy's picture
- hdu1162-Eddy's picture
- hdu1162-Eddy's picture
- Eddy's picture
- hdu Eddy's picture
- Eddy's picture
- Eddy's picture
- HDU1162:Eddy's picture
- Eddy's picture
- 1162 Eddy's picture
- hdu_1162 Eddy's picture
- Eddy's picture
- HDU1162---Eddy's picture
- Eddy's picture
- 第5章 第9题
- css的默认值
- poj 1269
- 皆可为进入空间疯狂送积分快睡觉
- 《How Tomcat Works》读书笔记(二)
- Eddy's picture
- WISE-Cloud,Advantech's Software Services
- 发斯蒂芬上升到发送到
- sgu-247 Difficult Choice
- 解决session error问题
- 修改linux设置客户端连接,一般设置Ip以区别不同服务器。
- 两年后的现在---该怎么走
- 15分钟学会使用Git和远程代码库
- pdf2swf 转换时报错