杭电ACMOJ 最小公倍数 Easy *又掉到了质因子和最大公因数的坑里

基本思想:

还是在注意一下,最大公因数和质因子没啥关系,最大公因数可以是合数;

 

最大公因数求法:辗转相除;

最小公倍数求法:m*n/最大公因数;

 

关键点:

无;

 

#include<string>
#include<iostream>
#include<vector>
using namespace std;

const int maxn = 1010;
vector<int>vec;
bool vis[maxn];
int findmin(int n,int m) {
    //寻找最大公约数
    //默认a>b;
    if (m == 0) {
        return n;
    }
    return findmin(m, n%m);
}

int charge(int n,int m) {
    int index = -1;
    if (n > m)
        index = findmin(n, m);
    else
        index = findmin(m, n);
    return (m*n)/index;
}


int main() {
    int n, m;
    while (cin >> n >> m) {
        cout<<charge(n, m)<<endl;
    }
    return 0;
}

 

posted @ 2020-03-09 14:06  暮云林凌  阅读(191)  评论(0)    收藏  举报