[心得] 0.096
1.一開始就有注意到 int 最好不要和 浮點數比較的問題,所已全部變數宣告成double
這樣在DEV C++裡雖然答案是對的 但是送上去會得到WA,所以只好參考網路上別人的答案把int 運算都 type casting 成double,才AC!
2.每個點與ABCD 的距離都小於半徑!
#include <stdio.h>
int main()
{
int a,n;
while(scanf("%d %d",&n,&a)==2)
{
if(n==0 &&a==0)
break;
int i,counter=0;
double x,y;
for(i=0;i<n;i++)
{
scanf("%lf %lf",&x,&y);
if((x*x)+(y*y)<= (double)a*a&&
(a-x)*(a-x)+(y*y)<=(double)a*a&&
(a-x)*(a-x)+(a-y)*(a-y)<=(double)a*a&&
(x*x)+(y-a)*(y-a)<=(double)a*a)
counter++;
}
printf("%.5lf\n",((double)counter/(double)n*(double)a*(double)a));
}
return 0;
}
沒有留言:
張貼留言