hdu1077
#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的更多相关文章
- Catching Fish[HDU1077]
Catching Fish Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)To ...
- OJ题目分类
POJ题目分类 | POJ题目分类 | HDU题目分类 | ZOJ题目分类 | SOJ题目分类 | HOJ题目分类 | FOJ题目分类 | 模拟题: POJ1006 POJ1008 POJ1013 P ...
随机推荐
- 剪辑的楼天城的ACM之路
楼天城楼教主的acm心路历程(剪辑) 利用假期空闲之时,将这几年GCJ,ACM,TopCoder 参加的一些重要比赛作个回顾.昨天是GCJ2006 的回忆,今天时间上更早一些吧,我现在还清晰记得3 年 ...
- Nginx/Apache下如何禁止指定目录运行PHP脚本
下面和大家一起分享下如何在Apache和Nginx禁止上传目录里PHP的执行权限. Apache下禁止指定目录运行PHP脚本 在虚拟主机配置文件中增加php_flag engine off指令即可,配 ...
- Codeforces Round #335 (Div. 2) C. Sorting Railway Cars
C. Sorting Railway Cars time limit per test 2 seconds memory limit per test 256 megabytes input stan ...
- cocos2dx 中 string 转json
string jsonData = warriors.toStyledString().c_str(); Json::Value parseData; Json::Reader reader; rea ...
- GW知识点
1.取值: protected void Button1_Click(object sender, EventArgs e) { string str = ""; foreach ...
- Java_基础_01_static和final
二.参考资料 1.java入门之关键字static和final 2.static和final的区别
- Java企业微信开发_Exception_01_"errcode":60011,"errmsg":"no privilege to access/modify contact/party/agent "
微信企业号增加成员时,返回错误信息: jsonObject:{"errcode":60011,"errmsg":"no privilege to ac ...
- 通知消息与ON_NOTIFY
1.通知消息一般是由子控件发出,由父窗口响应,因此响应函数的位置在父窗口内. 2.通知消息发送给父窗口的是通知码,即WM_NOTIFY消息(但为了区分方便不同的消息有不同的名称,但都是以WM_NOTI ...
- 【leetcode刷题笔记】Recover Binary Search Tree
Two elements of a binary search tree (BST) are swapped by mistake. Recover the tree without changing ...
- 2017-2018-1 20179215《Linux内核原理与分析》第四周作业
本次的实验是使用gdb跟踪调试内核从start_kernel到init进程启动,并分析启动的过程. 1.首先是在实验楼虚拟机上进行调试跟踪的过程. cd LinuxKernel qemu -kerne ...