给定A和B的值,找到可在等式X = P * A + Q * B中获得的X的最小正整数,这里P和Q可以为零或任何正整数或负整数。
如果A = 2且B = 4,则答案将为2。
我们需要找到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