【藍橋杯】2018.B組.Java.第二題
阿新 • • 發佈:2018-12-20
標題:方格計數
如圖p1.png所示,在二維平面上有無數個1x1的小方格。 我們以某個小方格的一個頂點為圓心畫一個半徑為1000的圓。 你能計算出這個圓裡有多少個完整的小方格嗎?
注意:需要提交的是一個整數,不要填寫任何多餘內容。
題解
以圓心為原點,建立直角座標系。只計算第一象限,最後結果乘以4,即為所求結果。
public class Main {
private static int count;
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int R = in.nextInt();
for (int i = 1; i < R; i++) {
for (int j = 1; j < R; j++) {
if (i * i + j * j <= R * R)
count++;
}
}
System.out.println(4*count);
}
}
輸入
1000 輸出 3137548