题解-辗转相除法最大公约数
2025-12-03 14:44:59
发布于:浙江
2阅读
0回复
0点赞
思路:本题为典型的最大公约数,只需运用计算和函数即可。
错误想法:
10的9次方,枚举即可,于是代码如下:
#include<bits/stdc++.h>
using namespace std;
long long a,b;
int main(){
cin>>a>>b;
for(int i=a;;i--){
if(a%i0&&b%i0){
cout<<i;
break;
}
}
return 0;
}
可一个点超时,我刚开始这么写的
所以枚举不行。
AC代码:
#include<bits/stdc++.h>
using namespace std;
int n(int a,int b){
if(a%b==0) return b;
else return n(b,a%b);
}
int main(){
int a,b;
cin>>a>>b;
cout<<n(a,b);
return 0;
}
这里空空如也







有帮助,赞一个