1 条题解

  • 0
    @ 2024-4-26 20:49:22

    【题目大意】 百钱买百鸡问题,输入公鸡母鸡和小鸡的价格,以及现有的钱和需要购买的鸡的数量,计算输出方案数。

    【考纲知识点】 基本运算(一级), 循环结构(二级)

    【解题思路】

    使用循环嵌套枚举公鸡和母鸡的数量,根据总价计算要求表示出小鸡数量,通过判断每种方案鸡的总数是否满足要求,从而统计出正确的方案数;

    【参考程序】

    #include <iostream>
    using namespace std; 
    int main() { 
         int x, y, z, n, m, cnt = 0;
         //x,y,z 分别为公鸡母鸡的价格以及小鸡的价格与数量关系 
         cin >> x >> y >> z >> n >> m; 
         //枚举公鸡数量,公鸡数量小于等于总数量 m,公鸡价格 gj\*x 小于等于总价格n
         for (int gj = 0; gj \* x <= n && gj <= m; gj++) 
               //枚举母鸡数量,母鸡+公鸡的数量需要小于等于总数量m,母鸡+公鸡的价格mj\*y+gj\*x 需要小于等于总价格 n 
             for (int mj = 0; mj \* y + gj \* x <= n && mj + gj <= m; mj++) {
                  int xj = (n - gj \* x - mj \* y) \* z; //计算出小鸡的数量
                  if (gj + mj + xj == m) //判断三种鸡的总数量是否等于m
                      cnt++; //若相等则方案数+1
             } 
         cout << cnt << endl; //最终输出正确的方案数 
         return 0;
     }
    
    • 1

    信息

    ID
    490
    时间
    1000ms
    内存
    256MiB
    难度
    6
    标签
    递交数
    335
    已通过
    97
    上传者