趣味入门故事
为何要在余下的土地里找最大方块?为何适用于这小块地的最大方块,也是适用于整块地的最大方块呢?这就涉及到今天的主角——欧几里德算法,但是详细原理以及证明请看文末的,我们接着讲故事
欧几里得算法(The-Euclidean-algorithm)
如果你想真真正正把这个搞懂,建议把证明过程也看完
这些项的顺序不重要,因此:GCD(A,B)=GCD(B,R)
相关的C++代码如下:
#include<iostream>
using namespace std;
int gcd(int a,int b)
{
return b ? gcd(b, a % b) : a;
//或者这种写法
//return !b ? a : gcd(b, a % b);
}
int main()
{
int a,b;
cin >> a >> b;
cout << gcd(a,b) << endl;
return 0;
}
运行结果如下: