1 条题解

  • 0
    @ 2025-4-9 20:29:11

    非高精度 50 分

    #include <bits/stdc++.h>
    using namespace std;
    int N;
    int main()
    {
        ios::sync_with_stdio(false);
        cin.tie(0);
        cin >> N;
        bool flag = false;
        for (int i = 2; i <= 9; i++)
        {
            if (N % i == 0)
            {
                cout << i << ' ';
                flag = true;
            }
        }
        if (!flag)
            cout << "none";
        return 0;
    }
    

    计算高精度除以低精度的余数

    #include <bits/stdc++.h>
    using namespace std;
    string N;
    // 返回高精度的 N 除以 k 的余数
    int cal(int k)
    {
        int r = 0;
        for (int i = 0; i < N.size(); i++)
            r = (r * 10 + (N[i] - '0')) % k;
        return r;
    }
    int main()
    {
        ios::sync_with_stdio(false);
        cin.tie(0);
        cin >> N;
        bool flag = false;
        for (int i = 2; i <= 9; i++)
        {
            if (cal(i) == 0)
            {
                cout << i << ' ';
                flag = true;
            }
        }
        if (!flag)
            cout << "none";
        return 0;
    }
    
    • 1

    信息

    ID
    13411
    时间
    1000ms
    内存
    128MiB
    难度
    8
    标签
    (无)
    递交数
    15
    已通过
    5
    上传者