Chúng ta được cho một số nguyên dương N. Mục đích là đếm các cặp số nguyên dương khác biệt không âm thỏa mãn bất đẳng thức:x * x + y * y
Chúng ta sẽ bắt đầu từ x =0 đến x2
Đầu vào
n=4
Đầu ra
distinct pairs= 4
Giải thích - các cặp sẽ là (0,0), (1,1), (0,1), (1,0). Tất cả những điều này thỏa mãn bất đẳng thức x2 + y2 <4
Đầu vào
n=2
Đầu ra
distinct pairs= 3
Giải thích - các cặp sẽ là (0,0), (0,1), (1,0). Tất cả những điều này thỏa mãn bất đẳng thức x2 + y2 <2
Phương pháp tiếp cận được sử dụng trong chương trình dưới đây như sau
-
Số nguyên N lưu trữ số nguyên dương.
-
Hàm countPairs (int n) nhận n làm đầu vào và trả về số lượng các cặp số nguyên dương không âm riêng biệt thỏa mãn bất đẳng thức:x2 + y2
-
đếm lưu trữ số lượng các cặp như vậy, ban đầu là 0.
-
Bắt đầu từ i =0 đến i2
-
Nếu i2 + j2
-
Kết quả là số lượt trả lại cuối cùng.
Ví dụ
#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; }
Đầu ra
Distinct Non-Negative integer pairs count: 4