問題描述 Fred正在考慮在路易斯安那州找一塊土地在上面建造他的房子。在調查過程中,他了解到路易斯安那州的陸地正以每年50平方英裡的速度縮小,原因是密西西比河對陸地的侵蝕。由于Fred希望他的餘生都能居住在這所房子裡,是以他需要知道他的土地是否會被河水侵蝕。
Fred做了更多的研究後發現,正在損失的陸地呈現出一個半圓形的形狀,這個半圓是以(0,0)為圓心的圓的X軸以上的部分,X軸以下的區域是河水,在第一年開始時這個半圓的面積是0。(如下圖所示)
輸入格式 第一行是一個正整數表示接下來有多少組資料,以下的每一行代表一組資料,每組資料由兩個浮點數組成,以空格隔開,分别代表Fred房子在平面内的坐标X和Y,機關是英裡,其中Y>=0。 輸出格式 對于每一組輸入資料,輸出一個整數Z,代表Fred的房子會在第Z年中被河水侵蝕。如果在第Z年結束時Fred的房子正好在半圓的邊界上,那麼應該算作是在第Z+1年被侵蝕,傳回Z+1。每個傳回結果占一行。 樣例輸入 2
1.0 1.0
25.0 0.0 樣例輸出 1
20
#include<stdio.h>
#define PI 3.141592653
//考察圓的面積公式 S = PI * R * R;
int main() {
int T, n;
double a, b;
scanf("%d", &T);
while(T--) {
n = 0;
scanf("%lf %lf", &a, &b);
// 盡量避免開根 浮點數的運算可能會存在誤差
//是以不要比較半徑
while(100*n <= (a*a + b*b)*PI)
n++;
printf("%d\n", n);
}
return 0;
}