该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
//回溯法-递归形式-01背包-c++语言 #include
using namespace std;#define MAX_SIZE 100int mv;//背包最大容量
int mp=-1; //背包最大价值
int mx[MAX_SIZE];//背包取得最大价值的物品集合
int x[MAX_SIZE];//试探集合 int size;//物品数量
int w[MAX_SIZE];//物品重量
int p[MAX_SIZE];//物品价值
void input(){
cout<
cin>>mv;
cout<
cin>>size;
cout<
for(int i=0;i
cin>>w[i]>>p[i];
}void output(){
if(mp==-1)cout<
else{
cout<
cout<
for(int i=0;i
cout<
cout<
}
}//nd:当前处理的物品,pd:当前已获得的价值,vd:当前的已使用的容量
void advance(int nd,int pd,int vd){
if(nd==size){
if(pd>mp){
mp=pd;
for(int i=0;i
}
}e