আমাদের একটি পজিটিভ ইন্টিজার N দেওয়া আছে। লক্ষ্য হলো ডISTINCT নন-নেগেটিভ পজিটিভ ইন্টিজার জোড়া (x,y) গণনা করা যাতে x*x + y*y < N সন্তুষ্ট হয়।
আমরা x=0 থেকে x² < N এবং y=0 থেকে y² < N পর্যন্ত চেক করব। যদি x² + y² < N হয়, তবে জোড়ার কাউন্ট বাড়াব।
ইনপুট − n=4
আউটপুট − distinct pairs = 4
ব্যাখ্যা − জোড়া: (0,0), (1,1), (0,1), (1,0)। সবগুলো x²+y² < 4 সন্তুষ্ট করে।
ইনপুট − n=2
আউটপুট − distinct pairs = 3
ব্যাখ্যা − জোড়া: (0,0), (0,1), (1,0)। সবগুলো x²+y² < 2 সন্তুষ্ট করে।
প্রোগ্রামে ব্যবহৃত পদ্ধতি
- ইন্টিজার
Nইনপুট নিন। countPairs(int n)ফাংশন লিখুন যা কাউন্ট রিটার্ন করবে।count = 0ইনিশিয়ালাইজ করুন।- দুটি নেস্টেড লুপ:
i=0; i*iএবং j=0; j*j। - যদি
i*i + j*j < nহয়, তবেcount++। 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++)
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