求x和y的最小值,使得ax –在C ++中为= 0

假设我们有两个值a和b。我们必须找到x和y,使得ax – by =0。因此,如果a = 25且b = 35,则x = 7且y = 5。

为了解决这个问题,我们必须计算a和b的LCM。a和b的LCM将是可以使双方相等的最小值。可以使用数字GCD使用以下公式找到LCM-

LCM(a,b)=(a * b)/ GCD(a,b)

示例

#include<iostream>
#include<algorithm>
using namespace std;
void getSmallestXY(int a, int b) {
   int lcm = (a * b) / __gcd(a, b);
   cout << "x = " << lcm / a << "\ny = " << lcm / b;
}
int main() {
   int a = 12, b = 26;
   getSmallestXY(a, b);
}

输出结果

x = 13
y = 6