1 条题解

  • 0
    @ 2025-9-14 20:59:33

    直接枚举 a,b,ca,b,c 并判断即可。

    #include <bits/stdc++.h>
    using namespace std;
    bool prime(int x)
    {
        if (x == 1) return false;
        for (int i = 2; i * i <= x; i++)
            if (x % i == 0) return false;
        return true;
    }
    int factors(int x)
    {
        if (prime(x)) return 0;
        for (int i = 2; i * i <= x; i++)
            if (x % i == 0 && prime(i) && prime(x / i)) return i;
        return 0;
    }
    int main()
    {
        int n;
        cin >> n;
        for (int i = 2; i <= n; i++)
            if (prime(i))
            {
                int p = factors(n - i);
                if (p)
                {
                    printf("%d%c%d%c%d%c%d\n", n, '=', i, '+', p, '*', (n - i) / p);
                    return 0;
                }
            }
        return 0;
    }
    
    • 1

    信息

    ID
    130
    时间
    1000ms
    内存
    256MiB
    难度
    2
    标签
    递交数
    10
    已通过
    3
    上传者