#include <iostream>
#include <algorithm>
using namespace std;
int main() {
long long a, b;
long long temp;
cin >> a>>b;
temp = 1;
for (int i=2;i<=min(a,b);i++)//以较小的数字为上限
{//分了三种情况考虑
if (a%i == 0 && b%i == 0)
{
temp *= i;
a = a/i;
b = b/i;
i = 2;
continue;
}
if (a%i==0&&b%i!=0)
{
a = a/i;
i = 2;
continue;
}
if (a%i != 0 && b%i == 0)
{
b = b/i;
i = 2;
continue;
}
}
cout << temp;
//cin >> temp;
return 0;
}
[数据结构 & 算法] codevs1212求A,B的最大公约数
于 2017-10-28 22:09:06 首次发布