William_6007 2022-07-21 16:45 采纳率: 0%
浏览 8

luoguP1029出了问题

问题遇到的现象和发生背景

在洛谷做P029

问题相关代码,请勿粘贴截图
#include <bits/stdc++.h>
using namespace std;
int cnt = 0;
int kkk(int a,int b)
{
    if(b == 0) return a;
    else return kkk(b,a % b);
} 
int check1(int a,int b)
{
    return a * b / kkk(a,b);
}
int main()
{
    int x,y;
    cin >> x >> y;
    long long pro = x * y;
    if(x == y)
    cnt--;
    for(int z = 1;z < sqrt(x * y);z++)
    {
        if(pro % z == 0 && kkk(z,pro / z) == x) 
        cnt += 2;
    }
    cout << cnt;
    return 0;
}

运行结果及报错内容

有一个样例没过,wa了

我的解答思路和尝试过的方法

我想要达到的结果

通过该题

  • 写回答

1条回答 默认 最新

  • 善良的大铁牛 2022-07-21 23:04
    关注

    有个结论 最大公因数*最小公倍数 = 两数乘积

    
    #include <bits/stdc++.h>
    using namespace std;
    int n, m, s;
    
    signed main(void)
    {
        cin >> n >> m;
        for (int i = n; i <= m; i++)
        {
            int j = n * m / i;
            // gcd是求最大公因数
            if (__gcd(i, j) == n && i * j / __gcd(i, j) == m)
                s++;
        }
        cout << s;
    }
    
    评论

报告相同问题?

问题事件

  • 创建了问题 7月21日

悬赏问题

  • ¥15 vivo手机的101root检测通常包括Bootloader状态检测吗,有没有懂的人来回答下?
  • ¥15 c++ 单例模式 在不项目之间的引用问题
  • ¥15 我想在微信名中用上红桃♥️这个表情 可是保存不了 说是有特殊符号或者不支持的语言 需要怎么做呢
  • ¥15 oracle报skip not validate connection
  • ¥15 请问左奇异向量怎么求解呢?
  • ¥60 linux 系统中的wps每次使用退出都产生两个多余文件
  • ¥15 有偿求一款知识付费+流量主小程序开源
  • ¥15 Arcgis pro制图
  • ¥15 vivado综合时间过长
  • ¥15 uniapp时间组件切换语言问题