程式碼如下:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a, b;
cin >> a >> b;
int i=0;
for(i=min(a, b); i>0; i--)
{
if(a%i==0 && b%i==0)
{
cout << i;
break;
}
}
return 0;
}
測資:
2147483647 2147483646
這樣迴圈要跑 $2^31-2$ 次
最大公因數不能這樣算。
跑 $2^31-2$ 次
更正:
$2^{31} - 2$
原來如此 謝謝!