求最大公约数最快捷的方法,求大数的最大公约数也是轻而易举
#include<iostream>
using namespace std;
int gcd(int a,int b){
if(a<b)swap(a,b); //保证a>=b
if(a==b||b==0)return a; //相等或者有0的就结束
if(a%2==0&&b%2==0)return 2*gcd(a/2,b/2); //均为偶数
else if(a%2&&b%2)return gcd((a+b)/2,(a-b)/2); //均为奇数
else if(a%2&&b%2==0)return gcd(a,b/2); //一奇一偶
else return gcd(a/2,b); //一偶一奇
}
int main(){
cout<<gcd(1000000,15);
}