양의 정수 N이 주어집니다. 목표는 다음과 같은 부등식을 만족하는 음수가 아닌 양의 정수 쌍을 세는 것입니다. x*x + y*y
x=0 에서 x2
입력
n=4
출력
distinct pairs= 4
설명 - 쌍은 (0,0), (1,1), (0,1), (1,0)입니다. 이들은 모두 부등식 x2 + y2 <4
를 만족합니다.입력
n=2
출력
distinct pairs= 3
설명 - 쌍은 (0,0), (0,1), (1,0)입니다. 이들은 모두 부등식 x2 + y2 <2
를 만족합니다.아래 프로그램에서 사용된 접근 방식은 다음과 같습니다.
-
정수 N은 양의 정수를 저장합니다.
-
countPairs(int n) 함수는 n을 입력으로 받아 다음과 같은 부등식을 충족하는 음수가 아닌 다른 정수 쌍의 개수를 반환합니다. x2 + y2
-
count는 이러한 쌍의 수를 저장하며 처음에는 0입니다.
-
i=0에서 시작하여 i2
-
i2 + j2
-
결과로 결국 count를 반환합니다.
예시
#include <iostream> using namespace std; int countPairs(int n){ int count = 0; for (int i = 0; i*i < n; i++) for (int j = 0; j*j < n; j++) //x*x + y*y < n if(i*i + j*j < n) count++; return count; } int main(){ int N=4; cout << "Distinct Non-Negative integer pairs count: " << countPairs(N) ; return 0; }
출력
Distinct Non-Negative integer pairs count: 4