1 条题解

  • 0
    @ 2026-1-29 23:02:13
    #include<bits/stdc++.h>
    using namespace std;
    
    int main() {
        // [1] 读取输入的总钱数n和总鸡数m
        int n, m;
        cin >> n >> m;
        
        // [2] sum-累加统计符合条件的购买方案数,初始化为0
        int sum = 0;
        
        // [3] 枚举公鸡数量x(x≥0,且5x ≤n)
        for (int x = 0; x <= n / 5; x++) {
            // [4] 枚举母鸡数量y(y≥0,且3y ≤n-5x)
            for (int y = 0; y <= (n - 5 * x) / 3; y++) {
                // 计算小鸡数量z
                int z = m - x - y;
                // [5] 验证条件:z≥0,且z是3的倍数,同时金额正好花完
                if (z >= 0 && z % 3 == 0 && 5 * x + 3 * y + z / 3 == n) {
                    // 按要求输出:公鸡数 母鸡数 小鸡数
                    cout << x << " " << y << " " << z << endl;
                    sum++; // 符合条件,方案数累加1
                }
            }
        }
        
        return 0;
    }
    
    • 1

    信息

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