您的位置:首页 > 其它

NYOJ 外星人的供给战--710

2016-05-24 09:04 393 查看
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
struct node{
double l,r;
}num[10005];
int cmp(const void *a,const void *b)
{
return (*(node *)a).l-(*(node *)b).l;
}
int main(){
int k,i,j;
scanf("%d",&k);
while(k--)
{
int n,r,x,y;
double t;
scanf("%d %d",&n,&r);
for(i=0;i<n;i++)
{
scanf("%d %d",&x,&y);
t=sqrt(r*r-y*y);
num[i].l=x-t;
num[i].r=x+t;
}
qsort(num,n,sizeof(num[0]),cmp);
//int count=1;
int b=num[0].r;
int sum=1;
for(i=1;i<n;i++
{
if(num[i].l>b)
{
sum++;
b=num[i].r;
}
else
{
if(num[i].r<b) b=num[i].r;
}
}
printf("%d\n",sum);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: