2009年3月13日 星期五

Q10573: Geometry Paradox

// Run time: 0.000
#include <stdio.h>
#include <math.h>
#define PI 2*acos(0.0)

int check(char *s);

int main()
{
int N;
int num;
int r1, r2;
int t;
char str[6];
double area;

scanf("%d\n", &N);

while (N--)
{
gets(str);

num = check(str);

// argument number
if (num == 2)
{
sscanf(str, "%d%d", &r1, &r2);
area = 2*r1*r2*PI;
}
else
{
sscanf(str, "%d", &t);
area = double(t*t)/8.0*PI;
}

printf("%.4lf\n", area);
}

return 0;
}

int check(char *s)
{
int i;

for ( i = 0; s[i] != '\0'; i++)
if (s[i] == ' ')
return 2;

return 1;
}

沒有留言: