2013年7月1日 星期一

2013/7/1 UVA 10589 - Area

/* http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&category=17&problem=1530&mosmsg=Submission+received+with+ID+11983332 */
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
    int n, a; double x, y; int SJ;
    while( scanf("%d %d", &n, &a)!=EOF )
    {
        if( n == 0 ){ break; }
        SJ = 0;
        for(int i = 0; i < n; i++)
        {
            scanf("%lf %lf", &x, &y);
            if(
                x*x + y*y <= double(a*a) &&
                x*x + (a-y)*(a-y) <= double(a*a) &&
                (a-x)*(a-x) + (a-y)*(a-y) <= double(a*a) &&
                (a-x)*(a-x) + y*y <= double(a*a)
              )
            {
                SJ++;
            }
        }  
        printf("%.5f\n", (double)SJ*a*a/n);
    }  
}

沒有留言:

張貼留言