比赛 板子大赛 评测结果 AAAAAAWAAA
题目名称 最大公约数和最小公倍数问题 最终得分 90
用户昵称 Gao 运行时间 0.030 s
代码语言 C++ 内存使用 3.28 MiB
提交时间 2025-01-22 14:52:10
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
int a,b,aa,bb,ans,ji;
int main(){
    freopen("gcdpro.in","r",stdin);
    freopen("gcdpro.out","w",stdout);
    cin>>aa>>bb;
    a=min(aa,bb);
    b=max(aa,bb);
    int mid=sqrt(a*b),sum=a*b;
    for(int i=a;i<=mid;i+=a){
        if(sum%i==0&&sum/i>=a&&sum/i<=b&&__gcd(i,sum/i)==a){
            ans++;
            if(i*i==sum)ji=1;
        }
    }
    cout<<ans*2-ji;
    return 0;
}