#include<iostream>
#include<stdio.h>
#include<algorithm>
#include<math.h>
using namespace std;
int par[];
struct Island
{
int x,y;
} isl[];
struct Node
{
int isl1,isl2;
double dis;
} rode[*/];
int find(int a)
{
if(a!=par[a])
{
par[a]=find(par[a]);
}
return par[a];
}
void build(int a,int b)
{
int fa=find(a);
int fb=find(b);
if(fa!=fb)
{
par[fb]=fa;
}
}
bool cmp(Node a,Node b)
{
return a.dis<b.dis;
}
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
int c;
scanf("%d",&c);
if(c == || c == ) {printf("oh!\n"); continue;}
for(int i=; i<c; i++)
par[i]=i;
int num=c*(c-)/;
for(int i=; i<c; i++)
{
scanf("%d%d",&isl[i].x,&isl[i].y);
}
int t=;
for(int i=; i<c; i++)
{
for(int j=i+; j<c; j++)
{
double mid=double((isl[i].x-isl[j].x)*(isl[i].x-isl[j].x)+(isl[i].y-isl[j].y)*(isl[i].y-isl[j].y));
if(mid<||mid>) continue;
else
{
rode[t].isl1=i;
rode[t].isl2=j;
rode[t].dis=sqrt(mid);
t++;
}
}
}
//cout<<t<<" num " <<num;
double ans=0.0;
int cnt=;
sort(rode,rode+t,cmp);
for(int i=;i<t;i++)
{
if(find(rode[i].isl1)!=find(rode[i].isl2))
{
ans+=rode[i].dis;
build(rode[i].isl1,rode[i].isl2);
cnt++;
}
}
ans*=;
if(cnt!=c-) printf("oh!\n");
else printf("%.1lf\n",ans);
}
return ;
}
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u
Description
Input
每组数据首先是一个整数C(C <= 100),代表小岛的个数,接下来是C组坐标,代表每个小岛的坐标,这些坐标都是 0 <= x, y <= 1000的整数。
Output
Sample Input
2
10 10
20 20
3
1 1
2 2
1000 1000
Sample Output
oh!
hud 1785 畅通工程的更多相关文章
-
HDU 1233 还是畅通工程(最小生成树)
传送门 还是畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...
-
所有的畅通工程[HDU1232][HDU1874][HDU1875][HDU1879]
畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submissio ...
-
畅通工程[HDU1863]
畅通工程 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submissio ...
-
还是畅通工程[HDU1233]
还是畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...
-
畅通工程续——E
E. 畅通工程续 某省自从实行了很多年的畅通工程计划后,终于修建了很多路.不过路多了也不好,每次要从一个城镇到另一个城镇时,都有许多种道路方案可以选择,而某些方案要比另一些方案行走的距离要短很多.这让 ...
-
畅通工程——D
D. 畅通工程 省*“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).经过调查评估,得到的统计表中列出了有可能建设公路的若干条道路的 ...
-
HDU-1233 还是畅通工程
Problem Description 某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离.省*“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能 ...
-
HDU - 1232 畅通工程
Problem Description 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇.省*“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道 ...
-
HDU1232 畅通工程 并查集
畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
随机推荐
-
Your app declares support for audio in the UIBackgroundModes key in your Info.plist 错误
提交AppStore时候被拒绝 拒绝原因:Your app declares support for audio in the UIBackgroundModes key in your Info.p ...
-
winsock error 相关
10061-WSAECONNREFUSED 是指没有启动服务器或者说服务器没有处于监听状态.通常导致client在connect时候返回这个错误码的原因在于服务端与客户端设置的端口号没有同步转换导致( ...
-
POJ 2533 Longest Ordered Subsequence 最长递增序列
Description A numeric sequence of ai is ordered if a1 < a2 < ... < aN. Let the subsequenc ...
-
BZOJ2351: [BeiJing2011]Matrix
2351: [BeiJing2011]Matrix Time Limit: 20 Sec Memory Limit: 128 MBSubmit: 589 Solved: 171[Submit][S ...
-
一起来用css画画
hello,大白来了... <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> ...
-
java从入门到卖肠粉系列
java从入门到卖肠粉系列 注:本教程只是从JAVA基础开始,绝对不会跟公司有任何利益冲突,更不会出现一行公司项目的代码 QQ群:9547527 推荐用土豆,百度去上传太慢,百度云在线播放还要转码.. ...
-
微信企业号C#开发配置API
微信开发第一步 : 配置API,实现接收消息服务配置 1.在下图界面先填好内容,事件消息处理可自行选择,我这里是没处理的 2.第二步: 使用vs 进行代码的编写,以下是我的代码.LogTextHe ...
-
linux系统无法正常启动,故障排查恢复
linux内核启动修复 首先看linux内核重要文件grub.conf # grub.conf generated by anaconda # # Note that you do not have ...
-
阿里Java开发手册
1.1 命名风格 (1)常量命名全部大写,单词间用下划线隔开. (2)抽象类命名以Abstract或Base开头:异常类命名以Exception结尾:测试类命名以它要测试的类名开始,以Test结尾. ...
-
1003. Check If Word Is Valid After Substitutions Medium检查替换后的词是否有效
网址:https://leetcode.com/problems/check-if-word-is-valid-after-substitutions/ 参考:https://leetcode.com ...