সমস্যা বিবৃতি
দুটি পূর্ণসংখ্যা p এবং q দেওয়া, কাজটি হল ন্যূনতম সম্ভাব্য সংখ্যা x খুঁজে বের করা যেমন q % x =0 এবং x % p =0। যদি শর্তগুলি কোনো সংখ্যার জন্য সত্য না হয়, তাহলে -1 প্রিন্ট করুন।
উদাহরণ
If p = 3 and q = 66 then answer is 3 as: 66 % 3 = 0 3 % 3 = 0
অ্যালগরিদম
- যদি একটি সংখ্যা x প্রদত্ত শর্তকে সন্তুষ্ট করে, তাহলে এটা স্পষ্ট যে q কে p দ্বারা ভাগ করা হবে অর্থাৎ q % p =0 কারণ x হল p এর গুণিতক এবং q হল x এর গুণিতক
- সুতরাং x এর ন্যূনতম সম্ভাব্য মান হবে GCDof p এবং q এবং যখন q p দ্বারা বিভাজ্য নয় তখন কোন সংখ্যা প্রদত্ত শর্ত পূরণ করবে না
উদাহরণ
#include <bits/stdc++.h> using namespace std; int getMinValue(int p, int q) { if (q % p == 0) { return __gcd(p, q); } return -1; } int main() { int p = 3; int q = 66; cout << "Minimum value = " << getMinValue(p, q) << endl; return 0; }
আপনি যখন উপরের প্রোগ্রামটি কম্পাইল এবং এক্সিকিউট করবেন। এটি নিম্নলিখিত আউটপুট −
তৈরি করেআউটপুট
Minimum value = 3