解题:最大公约数和最小公倍数问题
2023-08-09 16:01:01
发布于:广东
40阅读
0回复
0点赞
空降坐标:CP002768
来源:NOIP2001 普及组
请看代码
#include <bits/stdc++.h>
using namespace std;
int m,n,num,ans;
int gys(int a,int b)
{
if(a%b==0) return b;
else return gys(b,a%b);
}
int main()
{
cin>>m>>n;
num=m*n;
if(m==n) ans--;
for(int i=1;i<=sqrt(num);i++)
{
if(num%i==0&&gys(i,num/i)==m) ans+=2;
}
cout<<ans;
}
全部评论 1
一般方法会超时
2023-08-10 来自 广东
0
有帮助,赞一个