6、写成v=V..0是为了在程序中体现每个状态都按照方程求解了,避免不必要的思维复杂度。而这里既然已经抽象成看作黑箱的过程了,就可以加入优化。费用为cost的物品不会影响状态f[0..cost-1],这是显然的。递归实现:viewplain1.#include 2.using namespace std; 3. 4.const int W = 150; 5.const int number = 5; 6.const int VALUE[] = {60, 20, 10, 60, 100}; 7.const int WEIGHT[] = {20, 30, 50,
7、 60, 80}; 8. 9. 10.//function Make( i {处理到第i件物品} , j{剩余的空间为j}) :integer; 11.int Make(int i, int j) 12.{ 13. int r1 = 0; 1. int r2 = 0; 2. int r = 0; 3. 4. if (i == -1) 5. { 6. return