问题描述: 给定n种物品和一背包。物品i的重量是wi,其价值为vi,背包的容量为C。问应如何选择装入背包的物品,使得装 入背包中物品的总价值最大? 源代码: *********************************************************** using namespace std; const int c = 10; //背包的容量 const int w[] = {0,2,2,6,5,4};//物品的重量,其中0号位置不使用 。 const int v[]
问题可以描述为:给定一组共 n 个物品,每种物品都有自己的重量 wi, i=1~n 和价值 vi, i=1~n,在限定的总重量(背包的容量 C)内,如何选择才能使得选择物品的总价值之和最高。选择最优的物品子集放置于给定背包中,最优子集对应 n 元解向量(x1,…xn), 为方便调试,采用文件输入,标准输出(或文件输出也可)的形式。数据输入的格式如下:每组测试数据 包含 n+1 行,第 1 行为 C 和 n,表示背包容量为 C 且有 n 个物品,接下来 n 行为这 n 个物品的