hdu1875(MST)(prim)
来源:互联网 发布:淘宝月销量可以造假吗 编辑:程序博客网 时间:2024/05/22 08:11
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1875
源代码:
#include<iostream>
#include<cstdlib>
#include<cstdio>
#include<cmath>
using namespace std;
#define INF 999999
#define N 110
double edge[N][N];
double dist[N];
int visited[N];
int b[N][2];
int flag;
void prime(double edge[][N],int n)
{
memset(visited,0,sizeof(visited));
int i,j,temp;
double min;
for(i=2;i<=n;i++)
dist[i]=edge[1][i];
dist[1]=0.0;
visited[1]=1;
double sum=0.0;
for(i=2;i<=n;i++)
{
min=INF*1.0;
flag=0;
for(j=1;j<=n;j++)
{
if(!visited[j]&&dist[j]<min)
{
min=dist[j];
temp=j;
flag=1;
}
}
if(!flag)break;
sum+=min;
visited[temp]=1;
for(int k=1;k<=n;k++)
{
if(!visited[k]&&edge[temp][k]<dist[k])
{
dist[k]=edge[temp][k];
}
}
}
if(!flag)printf("oh!\n");
else printf("%.1lf\n",sum*100);
}
int main()
{
int cases,x,y;
scanf("%d",&cases);
while(cases--)
{
int c,i,j;
scanf("%d",&c);
for(i=1;i<=c;i++)
for(j=1;j<=c;j++)
edge[i][j]=INF;
for(i=1;i<=c;i++)
{
scanf("%d%d",&x,&y);
b[i][0]=x;
b[i][1]=y;
}
for(int i1=1;i1<c;i1++)
{
for(int j1=i1+1;j1<=c;j1++)
{
double dis=sqrt((b[i1][0]-b[j1][0])*(b[i1][0]-b[j1][0])*1.0+(b[i1][1]-b[j1][1])*(b[i1][1]-b[j1][1])*1.0);
if(dis>=10&&dis<=1000)
{
edge[i1][j1]=dis;
edge[j1][i1]=dis;
}
}
}
prime(edge,c);
}
//system("pause");
return 0;
}
- hdu1875(MST)(prim)
- poj2421 MST(prim+临接表)
- HDU1875-畅通工程再续(Prim算法+Kruskal算法)
- 图论 经典prim算法(MST)
- 最小生成树(MST):Prim / Kruskal
- POJ 1679----The Unique MST(prim)
- hdu 1863 畅通工程(MST,prim)
- hdu1875 畅通工程再续 最小生成树(prim算法)
- 最小生成树(MST)之Prim算法
- HDU 1102 && POJ 2421 Constructing Roads (经典MST~Prim)
- ZOJ 1586 QS Network (经典MST~Prim)
- POJ 3026:Borg Maze(BFS建图+prim+MST)
- UVA 11354 Bond (LCA + MST) (堆优化的Prim)
- POJ 1258 Agri-Net (prim求MST)
- 最小生成树(MST)——Prim算法
- poj 1258 MST模板题(用PRIM+堆实现)
- 数据结构基础6.3:最小生成树MST(Prim、Kruskal)
- Prim算法实现最小生成树MST(java)
- ubuntu中更改root用户密码
- myeclipse出现异常
- watir识别控件
- struts获取request等对象
- HDU1053--哈夫曼树
- hdu1875(MST)(prim)
- hdu 4365 瞎涂颜色 数论
- Linux tar命令
- 编程之美---算法真的很重要
- 在eclipse中使用hibernate和QBC及注意事项-mysql篇
- 数据结构大总结系列之红黑树
- 装饰者模式学习
- 监听home键
- linux c strtok