1 条题解

  • 0
    @ 2025-2-9 11:44:24

    1 TLE

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        int a, b, c, d;
        cin >> a >> b >> c >> d;
        for (int aa = 0; aa <= 1000; aa++)
            for (int bb = 0; bb <= 1000; bb++)
                for (int cc = 0; cc <= 1000; cc++)
                    for (int dd = 0; dd <= 1000; dd++)
                    {
                        if (aa + bb + cc + dd == 1000 &&
                            dd % d == 0 &&
                            aa * a + bb * b + cc * c + dd / d == 1000)
                        {
                            cout << aa << " " << bb << " " << cc << " " << dd << "\n";
                            return 0;
                        }
                    }
        cout << "-i";
        return 0;
    }
    

    2 2997ms

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        int a, b, c, d;
        cin >> a >> b >> c >> d;
        for (int aa = 0; aa <= 1000; aa++)
            for (int bb = 0; bb <= 1000; bb++)
                for (int cc = 0; cc <= 1000; cc++)
                {
                    int dd = 1000 - aa - bb - cc;
                    if (0 <= dd &&
                        dd % d == 0 &&
                        aa * a + bb * b + cc * c + dd / d == 1000)
                    {
                        cout << aa << " " << bb << " " << cc << " " << dd << "\n";
                        return 0;
                    }
                }
        cout << "-i";
        return 0;
    }
    

    3 1289ms

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        int a, b, c, d;
        cin >> a >> b >> c >> d;
        for (int aa = 0; aa <= 1000; aa++)
            for (int bb = 0; bb <= 1000 - aa; bb++)
                for (int cc = 0; cc <= 1000 - aa - bb; cc++)
                {
                    int dd = 1000 - aa - bb - cc;
                    if (dd % d == 0 &&
                        aa * a + bb * b + cc * c + dd / d == 1000)
                    {
                        cout << aa << " " << bb << " " << cc << " " << dd << "\n";
                        return 0;
                    }
                }
        cout << "-i";
        return 0;
    }
    

    4 117ms

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        int a, b, c, d;
        cin >> a >> b >> c >> d;
        // 存每种鸡的最大数量(数量限制、钱数限制)
        int maxAA = min(1000, 1000 / a);
        for (int aa = 0; aa <= maxAA; aa++)
        {
            int maxBB = min(1000 - aa, (1000 - aa * a) / b);
            for (int bb = 0; bb <= maxBB; bb++)
            {
                int maxCC = min(1000 - aa - bb, (1000 - aa * a - bb * b) / c);
                for (int cc = 0; cc <= maxCC; cc++)
                {
                    int dd = 1000 - aa - bb - cc;
                    if (dd % d == 0 &&
                        aa * a + bb * b + cc * c + dd / d == 1000)
                    {
                        cout << aa << " " << bb << " " << cc << " " << dd << "\n";
                        return 0;
                    }
                }
            }
        }
        cout << "-i";
        return 0;
    }
    
    • 1

    信息

    ID
    1549
    时间
    2000ms
    内存
    256MiB
    难度
    8
    标签
    递交数
    19
    已通过
    6
    上传者