最小重量机器设计问题

Posted henuliulei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了最小重量机器设计问题相关的知识,希望对你有一定的参考价值。

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 int n,m,d;
 4 int array1[100][100];
 5 int array2[100][100];
 6 int cw=0;
 7 int cp=0;
 8 int bestw=1000000;
 9 int x[100];
10 int x1[100];
11 void machine(int t){
12     if(t>=n){
13         if(cw<bestw){
14             bestw=cw;
15             for(int i=0;i<n;i++){
16                 x1[i]=x[i];
17             }
18         }
19         return;
20     }
21    for(int i=0;i<m;i++){
22        cp+=array1[t][i];
23        cw+=array2[t][i];
24        x[t]=i;
25       if(cp<=d && cw <=bestw){
26         machine(t+1);
27       }
28       cp-=array1[t][i];
29       cw-=array2[t][i];
30    }
31 }
32 int main()
33 {
34 
35     cin >> n >> m >> d;
36     memset(x1,0,sizeof(x1));
37     memset(x,0,sizeof(x));
38     memset(array1,0,sizeof(array1));
39     memset(array2,0,sizeof(array2));
40     for(int i=0;i<n;i++){
41         for(int j=0;j<m;j++){
42             cin >> array1[i][j];
43         }
44     }
45      for(int i=0;i<n;i++){
46         for(int j=0;j<m;j++){
47             cin >> array2[i][j];
48         }
49     }
50     machine(0);
51     cout << bestw << endl;
52      for(int i=0;i<n;i++){
53         cout << x1[i]+1 << " ";
54      }
55     return 0;
56 }

技术分享图片

 

以上是关于最小重量机器设计问题的主要内容,如果未能解决你的问题,请参考以下文章

最小重量机器设计问题

最小重量机器问题

两道关于回溯法,分支限界法的算法题

51nod 1125 交换机器的最小代价

创建一个叫做机动车的类: 属性:车牌号(String),车速(int),载重量(double) 功能:加速(车速自增)减速(车速自减)修改车牌号,查询车的载重量。 编写两个构造方法:一个没有(代码片段

按要求编写Java应用程序。 创建一个叫做机动车的类: 属性:车牌号(String),车速(int),载重量(double) 功能:加速(车速自增)减速(车速自减)修改车牌号,查询车的载重量(代码片段