#include<iostream>
#include<cmath>
using namespace std;

struct Point
{
double x,y;
};

double dis_sq(const Point& a,const Point& b) //距离平方
{
return (a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y);
}

Point lock_center(const Point& a,const Point& b)
{
Point s,e,m;
double d,c,ang;

s.x=b.x-a.x; //用于计算角度
s.y=b.y-a.y;
m.x=(a.x+b.x)/2.0; //中点
m.y=(a.y+b.y)/2.0;
d=dis_sq(a,m);
c=sqrt(1.0-d);
if(fabs(s.y)<1e-8) //ab是直径
{
e.x=m.x;
e.y=m.y+c;
}
else
{
ang=atan(-s.x/s.y); //求弦ab的垂直平分线与x轴所成的夹角
e.x=m.x+c*cos(ang);
e.y=m.y+c*sin(ang);
}
return e;
}

int main()
{
int T,n,i,j,k,ans,tmp;
Point p[310],c;

scanf("%d",&T);
while(T--)
{
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%lf%lf",&p[i].x,&p[i].y);
ans=1; //一个点时为1种
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(dis_sq(p[i],p[j])<=4.0) //平方
{
c=lock_center(p[i],p[j]);
tmp=0;
for(k=0;k<n;k++)
if(sqrt(dis_sq(c,p[k]))<=1.0001)
tmp++;
if(ans<tmp)
ans=tmp;
}
cout<<ans<<endl;
}
return 0;
}

hdu1077的更多相关文章

  1. Catching Fish[HDU1077]

    Catching Fish Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)To ...

  2. OJ题目分类

    POJ题目分类 | POJ题目分类 | HDU题目分类 | ZOJ题目分类 | SOJ题目分类 | HOJ题目分类 | FOJ题目分类 | 模拟题: POJ1006 POJ1008 POJ1013 P ...

随机推荐

  1. Hadoop 2.x 之 HA 简介

    HA结构图 HA是用来解决单点故障问题 DN: DataNode,启动时会往所有的NameNode汇报 NN: NameNode(主 Active(一个)   备 Standby(可以有多个)) Jo ...

  2. 用用OGRE1.74搭建游戏框架(转载)

    用OGRE1.74搭建游戏框架(一) 新版的OGRE出来了,不知什么原因抛弃了CEGUI.国内的教程好像也更新比较少了,在官网上还是发现不少资料的,现在参考官网上的一些资料来搭建一个游戏的框架. 参考 ...

  3. HIVE- 数据倾斜

    数据倾斜就是由于数据分布不均匀,数据大量集中到一点上,造成数据热点.大多数情况下,分为一下三种情况: 1.map端执行比较快,reduce执行很慢,因为partition造成的数据倾斜. 2.某些re ...

  4. Unity3D之Mesh【创建动态Mesh的学习网站】

    觉得不错!做记录! 1.http://gamerboom.com/archives/76484 2.http://jayelinda.com/ 3.几个私人的博客,可能有启发:http://blog. ...

  5. python中的enumerate()函数用法

    enumerate函数用于遍历序列中的元素以及它们的下标,可以非常方便的遍历元素. 比如我在往excel中写数据时就用到了这个函数: data = [] data.append(('预约码', '车牌 ...

  6. 机器学习 Support Vector Machines 1

    引言 这一讲及接下来的几讲,我们要介绍supervised learning 算法中最好的算法之一:Support Vector Machines (SVM,支持向量机).为了介绍支持向量机,我们先讨 ...

  7. ffmpeg代码实现自定义encoder

    1.概述 本文主要讲述如何用ffmpeg代码实现自己的encoder. 2.代码 /* *本程序主要实现一个自己的encoder并加入到encoder链中去,供api调用 *作者:缪国凯(MK) *8 ...

  8. 在Debug中使用断点调试程序

    我最近在学习汇编的程序,所以很多都需要动手写点代码去测试,如果是测试三五行代码的还比较简单,可以在debug中直接按T进行单步调试,但是到后来调试的代码越来越复杂,越来越长,如果再使用单步调试不知道要 ...

  9. Aravis 库编译方法

    Aravis 库编译方法 March 21, 2015 9:40 PM 首先下载 aravis 库的源代码:aravis 库下载地址 这里我们使用的是 aravis_0_2_0,比较老的一个版本. 首 ...

  10. javascript之原型prototype

    理解JavaScript原型 http://blog.jobbole.com/9648/ Web程序员应该知道的Javascript prototype原理 http://www.leonzhang. ...