1 条题解
-
0
思路分析
1. 任务拆解:
- 用n元钱买m只鸡
- 公鸡5元/只,母鸡3元/只,小鸡1元/3只
- 必须正好花完n元,正好买m只鸡
- 找出所有可能的购买方案
2. 关键点分析:
- 设公鸡a只,母鸡b只,小鸡c只
- 约束条件:
- a + b + c = m(总只数)
- 5a + 3b + c/3 = n(总金额)
- c必须是3的倍数(因为小鸡3只1元)
- 公鸡最多:n/5只
- 母鸡最多:m - a只
3. 步骤规划:
- 读取n和m的值
- 外层循环枚举公鸡数量a(0到n/5)
- 内层循环枚举母鸡数量b(0到m-a)
- 计算小鸡数量c = m - a - b
- 检查c是否为3的倍数且总金额等于n
- 输出满足条件的方案
4. 代码对应:
int n,m;cin>>n>>m;→ 读取总金额和总只数for(int a=0;a<n/5;a++)→ 枚举公鸡数量for(int b=0;b<m-a;b++)→ 枚举母鸡数量int c=m-a-b;→ 计算小鸡数量if(c%3==0 && a*5+b*3+c/3==n)→ 检查小鸡是3的倍数且金额正确cout<<a<<" "<<b<<" "<<c<<endl→ 输出方案
- 1
信息
- ID
- 78
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- 4
- 标签
- (无)
- 递交数
- 436
- 已通过
- 212
- 上传者