poj 1751 Highways MST
来源:互联网 发布:董事长和ceo知乎 编辑:程序博客网 时间:2024/05/06 07:52
水到家的一道题,居然WA了3次……没注意到距离是double……没有输出的话要输出一行空行
/*author:jxylang:C/C++university:China,Xidian University**If you need to reprint,please indicate the source***/#include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#include <cmath>#define INF 1E9using namespace std;double d[751];double dis[751][751];bool vis[751];int near[751];struct node{ int x,y;};node org[751];int n;int prim(){ double Min,ans=0; int K=n,i,t,now=0; while(K--) { Min=INF; for(i=0;i<n;i++) if(!vis[i]&&d[i]<Min) Min=d[i],now=i; vis[now]=1; if(now) { ans+=Min; if(Min)printf("%d %d\n",now+1,near[now]+1); } for(i=0;i<n;i++) { if(vis[i]||d[i]<=dis[now][i])continue; d[i]=dis[now][i];near[i]=now; } } return ans;}int main(){ int i,j,m,a,b,T=0; while(~scanf("%d",&n)) { memset(vis,0,sizeof(vis)); memset(d,127,sizeof(d)); for(i=0;i<n;i++) scanf("%d%d",&org[i].x,&org[i].y); for(i=0;i<n;i++) for(j=0;j<=i;j++) dis[j][i]=dis[i][j]=sqrt((org[i].x-org[j].x)*(org[i].x-org[j].x)+(org[i].y-org[j].y)*(org[i].y-org[j].y)); scanf("%d",&m); for(i=0;i<m;i++) { scanf("%d%d",&a,&b); dis[a-1][b-1]=dis[b-1][a-1]=0; } if(!prim())puts(""); }}
- poj 1751 Highways MST
- POJ 1751 Highways(MST 算法)
- POJ 1751 Highways (ZOJ 2048 ) MST
- POJ 2485 Highways (MST.Prim)
- POJ 2485 Highways ( MST 水题 )
- poj 2485 Highways(MST)
- POJ 1258 Agri-Net|| POJ 2485 Highways MST
- poj 1751 Highways
- poj 1751 highways
- Poj 1751 Highways(prim)
- poj 1751 Highways
- POJ-1751-Highways
- POJ:1751 Highways
- POJ 1751 Highways
- POJ-1751 Highways
- poj-1751-Highways
- POJ 1751 Highways
- poj 1751 Highways
- 我的php学习笔记(十四)php的面向对象开发(一)
- 在ubuntu12.4系统中配置vsftpd服务器并编写自动注册脚本
- 我的php学习笔记(十五)php的面向对象开发(二)
- 如何搭建oracle学习环境
- 正则表达式--常见的一些判断
- poj 1751 Highways MST
- 我的php学习笔记(十六)php的面向对象开发(三)
- 我的php学习笔记(十七)php的面向对象开发(四)
- jsp_EL_按域取值
- windows任务管理器 参数解释
- java上传文件乱码问题解决
- jQuery通过ajax传送数组
- Android游戏编程之测试单点触摸及多点触摸API
- 杂谈随想