HDU2602 01背包问题

这是一道简单的动态规划题目,虚拟主机,写出了转移方程就好办了。先写上二维方程的解决办法。

至于在HDU的Online Judge上有一组非常变态的数据。(骨头空间有可能为0,但价值不为零)。所以weight循环必须从0开始。否则就是WA了。

该组变态测试数据如下:12 020 10 1答案是: 20

1 #include<stdio.h> 2 #define M 1002 3 int max[M][M]; 4 int weight[M],value[M]; 5 int n,v; dp() 8 {,&n,&v);10int i,j;11for(i=1;i<=n;i++),&value[i]);13for(i=1;i<=n;i++),&weight[i]);15for(i=1;i<=n;i++) {18if(weight[i]<=j&&max[i-1][j-weight[i]]+value[i]>max[i-1][j])max[i][j]=max[i-1][j-weight[i]]+value[i];19else max[i][j]=max[i-1][j];20 },max[n][v]);22 23 } main()27 {28 int num;,&num);30 while(num–)31 dp();32 },美国服务器,网站空间只有经历过地狱般的折磨,才有征服天堂的力量。

HDU2602 01背包问题

相关文章:

你感兴趣的文章:

标签云: