#include"stdio.h"
#include"math.h"
#include"stdlib.h"
typedef struct {
double x1,x2;
}POINT;
int cmp(const void *a,const void *b)
{
return (*(POINT *)a).x1>(*(POINT *)b).x1?1:-1;
}
POINT t[1000];
main()
{
int n,d,ans,i=0,j,judge,tag;
double tx,ty;
while(scanf("%d%d",&n,&d)!=EOF&&(n||d))
{
for(j=0,judge=0;j<n;j++)
{
scanf("%lf %lf",&tx,&ty);
if(ty>d||d==0){judge=1;}
if(!judge)
{
t[j].x1=tx-sqrt(d*d-ty*ty);
t[j].x2=tx+sqrt(d*d-ty*ty);
}
}
if(!judge)qsort(t,n,sizeof(POINT),cmp);
ans=1,tag=0;
for(j=1;!judge&&j<n;j++)
if(t[j].x1>t[tag].x2)ans++,tag=j;
else if(t[j].x2<t[tag].x2)tag=j;
printf("Case %d: ",++i);
if(!judge)printf("%d\n",ans);
else puts("-1");
}
return 0;
}
POJ 1328 Radar Installation 贪心
最新推荐文章于 2022-11-27 23:18:23 发布