0-1背包问题
2014-03-07 01:29
183 查看
有n个物品。第i个物品的体积为Vi,重量为Wi。选一些物品装到一个容量为C的背包,使得背包内物品在总体积不超过C的前提下重量尽量大。1<=n<=100,
1<=Vi<=C<=1000,1<=Wi<=10^6。
1<=Vi<=C<=1000,1<=Wi<=10^6。
#include <iostream> #include <math.h> using namespace std; void fun(int V[], int W[], int n, int C) { int d[101][1001]; for (int i = 0; i <= C; i++) { d [i] = 0; } for (int i = n-1; i >= 0 ; i--) { for (int j = 0; j <= C; j++) { if (j >= V[i]) { d[i][j] = max(d[i+1][j], d[i+1][j-V[i]]+W[i]); } else { d[i][j] = d[i+1][j]; } } } cout << "result " << d[0][C] << endl; } int main(int argc, char *argv[]) { int V[3] = {1, 6, 3}; int W[3] = {1, 2, 3}; fun(V, W, 3, 7); return 0; }
相关文章推荐
- 92.背包问题(lintcode)
- 背包问题(动态优化)
- 动态规划之 0/1背包 问题
- 背包问题(贪心算法)
- 背包问题
- [usaco]4.1.3 Fence Rails 多维背包问题,dfsid
- 动态规划---->0/1背包问题
- ny106 背包问题
- HDU_2602_背包问题
- HDU 1284 钱币兑换问题(完全背包:入门题)
- 0-1背包问题
- 0-1背包问题
- 动态规划之背包问题(一)
- 完全背包问题
- 01背包问题合集
- 动态规划算法0-1背包问题java实现
- HDU 2602(Bone Collector)基础0-1背包问题
- 01背包问题
- HDU 3535 AreYouBusy 解题报告(背包问题)
- c++动态规划——背包问题