2.方格計數
如圖p1.png所示,在二維平面上有無數個1x1的小方格。
我們以某個小方格的一個頂點爲圓心畫一個半徑爲1000的圓。
你能計算出這個圓裏有多少個完整的小方格嗎?
注意:需要提交的是一個整數,不要填寫任何多餘內容。
【答案】:以圓的圓心爲座標原點,半徑所在直線爲橫軸和縱軸,將圓劃分爲四個象限。計算出一個象限內的方塊個數再*4即可。
設a,b爲最遠的方塊的長度,r爲圓的半徑長。最遠的方塊的的頂點一定不會超過圓的半徑因此a*a+b*b<=r*r。
public class Main {
public static void main(String args[]) {
int a, b;
int r = 1000;// 半徑長度
int sum = 0;// 總個數
for (int i = 0; i < 1000; i++) {
for (int j = 0; j < 1000; j++) {
a = i + 1;
b = j + 1;
if (a * a + b * b <= r * r)
sum++;
}
}
System.out.println(sum * 4);
}
}
答案:3137548