求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