方格計數(第9屆藍橋杯省賽 第2題)

**標題:方格計數

如圖p1.png所示,在二維平面上有無數個1x1的小方格。

我們以某個小方格的一個頂點爲圓心畫一個半徑爲1000的圓。
你能計算出這個圓裏有多少個完整的小方格嗎?

注意:需要提交的是一個整數,不要填寫任何多餘內容。
**
在這裏插入圖片描述
思路:圓內任意一點(在圓內的完整方格)與原點距離不超過半徑R(1000),利用直角三角形公式 直角邊1的平方+直角邊2的平方=斜邊的平方
求得第一象限數量*4

import java.util.Scanner;
public class Main {

	public static void main(String[] args) {
		Scanner in=new Scanner(System.in);
		int ans=0,r=1000;
        for(int i=1;i<=r;i++) {
        	for(int j=1;j<=r;j++) {
        		if(i*i+j*j<=r*r) {
        			ans++;
        		}
        	}
        }
        System.out.println(ans*4);
	} 
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章