1 条题解
-
0
【题目大意】 百钱买百鸡问题,输入公鸡母鸡和小鸡的价格,以及现有的钱和需要购买的鸡的数量,计算输出方案数。
【考纲知识点】 基本运算(一级), 循环结构(二级)
【解题思路】
使用循环嵌套枚举公鸡和母鸡的数量,根据总价计算要求表示出小鸡数量,通过判断每种方案鸡的总数是否满足要求,从而统计出正确的方案数;
【参考程序】
#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
- 上传者