1.更相减损术
每次把较大数变成大数与小数的差。
#include<bits/stdc++.h>
using namespace std;
int solve(int m,int n){
if(m>n)return solve(m-n,n);
if(m<n)return solve(m,n-m);
return m;
}
int main(){
int m,n;
cin>>m>>n;
cout<<solve(m,n);
return 0;
}
1.1蓝桥2018A组a题也用到了求最大公约数,而我们也可以调用库函数去求
#include<bits/stdc++.h>
using namespace std;
int main(){
int m,n;
cin>>m>>n;
cout<<__gcd(m,n); //两个下划线
return 0;
}