সমস্যা বিবরণ
A এবং B-এর মান দেওয়া আছে, সমীকরণ X = P*A + Q*B-এ অর্জনযোগ্য মিনিমাম পজিটিভ ইন্টিজার X-এর মান বের করুন। এখানে P এবং Q শূন্য বা যেকোনো পজিটিভ বা নেগেটিভ ইন্টিজার হতে পারে।
উদাহরণ
যদি A = 2 এবং B = 4 হয়, তবে উত্তর হবে ২।
অ্যালগরিদম
- আমাদের P এবং Q বের করতে হবে যাতে P*A > P*B এবং P*A - P*B ন্যূনতম পজিটিভ ইন্টিজার হয়।
- এই সমস্যাটি সহজে উভয় সংখ্যার GCD ক্যালকুলেট করে সমাধান করা যায়।
উদাহরণ
#include <iostream>
using namespace std;
int getGcd(int a, int b) {
if (a == 0) {
return b;
}
return getGcd(b % a, a);
}
int main() {
cout << "Answer = " << getGcd(2, 4) << endl;
return 0;
}
আউটপুট
যখন আপনি উপরের প্রোগ্রাম কম্পাইল ও এক্সিকিউট করবেন। এটি নিচের আউটপুট জেনারেট করবে:
Answer = 2