用c++写以下要求代码:A某造船公司生产货轮A型和B型,其载重量分别为200吨、300吨,A、B型货轮的加工生产需要三种原材料,现给出年度生产目标总 吨位T (T是整数,T<1000000) ,在完成该年度目标前提下(假定三种原材料价格相同),计算生产成本最低条件时三种材料的各自采购数量。 输入说明:第一行给出制造每艘A型货轮所需的各种材料单位数量;第二行给出制造每艘B型货轮所需的各种材料单位数量; 第三行给出年度生产目标T。 输出说明:三种原材料的需求量,两个输出数字间用一个空格分隔。
时间: 2024-04-24 18:22:19 浏览: 87
以下是C++代码实现:
```cpp
#include <iostream>
using namespace std;
int main() {
int a1, a2, a3, b1, b2, b3, T;
cin >> a1 >> a2 >> a3 >> b1 >> b2 >> b3 >> T;
int min_cost = INT_MAX;
int x, y, z;
for (int i = 0; i <= T / 200; i++) {
for (int j = 0; j <= (T - i * 200) / 300; j++) {
int k = (T - i * 200 - j * 300) / (a1 + b1);
int cost = (a1 + b1) * k + a2 * i + b2 * j + a3 * i + b3 * j + k * (a3 + b3);
if (cost < min_cost) {
min_cost = cost;
x = i;
y = j;
z = k;
}
}
}
cout << x * a1 + y * b1 + z * (a1 + b1) << " ";
cout << x * a2 + y * b2 + z * (a2 + b2) << " ";
cout << x * a3 + y * b3 + z * (a3 + b3) << endl;
return 0;
}
```
首先读入每艘A型和B型货轮所需各种材料的单位数量,以及年度生产目标T。然后,我们可以进行暴力搜索,枚举生产A型货轮的数量i和生产B型货轮的数量j,计算生产k艘A型和B型货轮所需的原材料的数量,以及成本,从而找到成本最低的情况。
在计算成本时,我们需要考虑三种原材料的采购量,即x、y和z。其中,x和y分别表示生产的A型货轮和B型货轮所需的原材料数量,z表示生产A型和B型货轮所需的共同原材料数量。
最后,我们输出三种原材料的需求量即可。
阅读全文