void swapa(int &a,int &b)
{int temp;
temp=a;
a=b;
b=temp;
}
int gcd(int m,int n)
{
if (m<n)
{
swapa(m,n);
}
if (n==0)
{
return m;
}
return gcd(n,m-n);
}
int gcdmin(int m,int n)
{
if (m<n)
{
swapa(m,n);
}
for (int i=n;i>n;i--)
{
if (m%i==0)
{
return i;
}
}
return -1;
}
int _tmain(int argc, _TCHAR* argv[])
{
clock_t begin=clock();
int i=gcdmin(31415,14142);
//for(int j=0;j<90000000;++j);
clock_t end=clock();
float usertime=float(end-begin)/CLOCKS_PER_SEC;
printf("%d\n",i);
printf("%f \n",usertime);
return 0;
}
问题:欧几里得算法与检查MIN法求最大公约数差别