问题描述:
(14)某工业生产部门根据国家计划的安排, 拟将某种高效率的5台机器,分配给所属的3个工厂A,B,C,各工厂在获得这种机器后,可以为国家盈利的情况如表4-10所示。问:这5台机器如何分配给各工厂,才能使国家盈利最大?
解题思路:
这不就是一个搜索?这个叫啥?贪心?
解题代码:
#include<cstdio>
#include<iostream>
using namespace std;
int main()
{
int a[6][3]={0,0,0,3,5,4,7,10,6,9,11,11,12,11,12,13,11,12};
int i,j,k,a1,b1,c1,sum,maxm=0;
for(i=0;i<=5;i++)
{
for(j=0;j<=5-i;j++)
{
k=5-i-j;
sum=a[i][0]+a[j][1]+a[k][2];
if(sum>maxm)
{
maxm=sum;
a1=i;
b1=j;
c1=k;
}
}
}
cout<<"A:"<<a1<<" B:"<<b1<<" C:"<<c1<<endl;
cout<<"sum="<<maxm;
return 0;
}
运行结果:
A:0 B:2 C:3
sum=21
Process returned 0 (0x0) execution time : 0.032 s
Press any key to continue.