C++背包问题

[复制链接]
查看11 | 回复1 | 2010-4-3 17:02:48 | 显示全部楼层 |阅读模式
这悬赏50网络金币的,比悬赏50万人民币的说话还牛X
回复

使用道具 举报

千问 | 2010-4-3 17:02:48 | 显示全部楼层
#includeusing namespace std;const int MaxJewelsNum=100;//宏定义最大珠宝数量structJewel//珠宝结构体{ int weight; int value;};struct //背包结构体{
Jewel Jewels[MaxJewelsNum];}Bags;int JewelsNum;//珠宝数目int MaxLoadWeight;//背包最大载重int RestWeight;//背包剩余载重int InsideValue=0;//背包中珠宝的价值int MaxValue=0;//定义并初始化最大价值void DispQuestion()//问题描述函数{ cout>MaxLoadWeight; RestWeight=MaxLoadWeight;//初始化剩余载重 cout>JewelsNum; coutwei>>val;Bags.Jewels.weight=wei;Bags.Jewels.value=val; }}void Swap(int &index1,int &index2)//交换函数{
int temp;temp=index1;index1=index2;index2=temp;}void SortJewels()//珠宝价值排序函数{ int i,j; for(i=1;i<JewelsNum;i++) {for(j=i+1;j<=JewelsNum;j++) if(Bags.Jewels.value[B]MaxValue)MaxValue=InsideValue;//刷新最大价值i++;InsideValue=0;RestWeight=MaxLoadWeight; }}void DispResult()//输出结果函数{ cout<<"\n0/1背包问题结果如下:"<<endl; cout<<"\n经过系统计算,该情况下的最大价值为:"; cout<<MaxValue<<endl; cout<<"\n背包问题结束!"<<endl;}void main()//主程序{ DispQuestion();//描述问题
InputInfor();//输入数据 SortJewels();//珠宝排序 LoadProcess();//装载珠宝
DispResult();//输出结果}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行