1 条题解
-
0
思路分析
1. 任务拆解:
- 找到满足以下条件的马匹组合:
- 大马 + 中马 + 小马 = 100匹
- 3×大马 + 2×中马 + 0.5×小马 = 100担
- 每种马至少1匹
- 小马数量必须是偶数(因为两只小马运1担)
2. 关键点分析:
- 小马数量必须是偶数(i从2开始,每次加2)
- 大马数量k = 100 - 小马数 - 中马数
- 担数条件:3k + 2j + i/2 = 100
- 需要保证k ≥ 1(大马至少1匹)
3. 步骤规划:
- 外层循环枚举小马数量(从2到100,步长为2)
- 内层循环枚举中马数量(从1到100)
- 计算大马数量 = 100 - 小马数 - 中马数
- 检查大马数量≥1且满足担数条件
- 输出满足条件的组合
4. 代码对应:
for(int i=2;i<=100;i+=2)→ 枚举小马数量(偶数)for(int j=1;j<=100;j++)→ 枚举中马数量int k=100-i-j→ 计算大马数量if(k>=1&&i/2+k*3+j*2==100)→ 检查大马≥1且担数=100cout<<k<<" "<<j<<" "<<i<<endl→ 输出大马、中马、小马数量
- 找到满足以下条件的马匹组合:
- 1
信息
- ID
- 2339
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 4
- 标签
- (无)
- 递交数
- 416
- 已通过
- 204
- 上传者