根据正常逻辑计算,按照数学上化简方式处理;

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

int main() 
{

    int a,b;
    cin>>a>>b;

    vector<int> vec;
    while(true)
    {
        if(a%2 == 0 && b%2==0)
        {
            vec.push_back(2);
            a=a/2;
            b=b/2;

        }
        else if(a%3 == 0 && b%3==0)
        {
            vec.push_back(3);
            a=a/3;
            b=b/3;
        }
        else 
        {
            vec.push_back(a);
            vec.push_back(b);
            break;
        }
    }
    int res=1;
    vector<int>::iterator it;
    for(it=vec.begin();it!=vec.end();it++)
    {
        res *=*it;
    }
    cout<<res<<endl;
}