vjudge 最大公约数GCD 直接求最大共约束和最小公倍数的指令

原题链接https://vjudge.net/contest/331993#problem/C

输入2个正整数A,B,求A与B的最大公约数。

Input2个数A,B,中间用空格隔开。(1<= A,B <= 10^9)Output输出A与B的最大公约数。Sample Input

30 105

Sample Output

15

#include<bits/stdc++.h>
using namespace std;
int main(){
    int m,n;
    cin>>m>>n;
    cout<<__gcd(m,n);   //直接调用函数求最大公约数
    return 0;
}

 m,n的最小公倍数为lcm(a,b) = a*b/gcd(a,b)

但写代码的时候要稍微做一些修改

#include<bits/stdc++.h>
using namespace std;
int main(){
    int m,n,x;
    cin>>m>>n;
    x=__gcd(m,n);   //最大公约数
    cout<<x<<endl;
    cout<<m/x*n<<endl;    //最小公倍数
    return 0;
}
原文地址:https://www.cnblogs.com/QingyuYYYYY/p/11628174.html