8 条题解

  • 0
    @ 2024-7-14 20:31:47

    解题思路:

    分类讨论题,分类如下:

    • a<ca < c 时,由于 b,n,mb,n,m 为正整数,所以无法得到合法的 bb
    • a÷(a÷c)ca \div (a \div c) \ne c 时,由于 aa 无法通过连除得到 cc,同样无法得到合法的 bb
    • 其他情况,最简单的方法就是把 mm 设为一,得 b=cb = c

    CODE:

    #include <iostream>
    using namespace std;
    long long t, a, c;
    int main()
    {
        ios::sync_with_stdio(false);
        cin.tie(0);
        cout.tie(0);
        cin >> t;
        while (t--)
        {
            cin >> a >> c;
            if (a < c)
            {
                cout << "-1\n";
                continue;
            }
            if (a / (a / c) != c)
                cout << "-1\n";
            else
                cout << c << '\n';
        }
        return 0;
    }
    

    Code

    信息

    ID
    14
    时间
    1000ms
    内存
    512MiB
    难度
    2
    标签
    递交数
    804
    已通过
    221
    上传者