51nod-【多重背包问题】
来源:互联网 发布:js菜鸟教程 编辑:程序博客网 时间:2024/05/13 05:46
<span style="font-size:18px;">#include<cstdio>#include<cstring>#define LL long long LL f[50000+11];struct node{int a;//重量 int b;//价值 }arr[50000];LL max(LL x,LL y){if(x>y)return x;return y;}int main(){LL n,w;scanf("%lld%lld",&n,&w);memset(f,0,sizeof(f));LL wi,pi,ci,i,j=1;for(i=1;i<=n;++i){scanf("%lld%lld%lld",&wi,&pi,&ci);int temp=1;while(ci>=temp){arr[j].a=wi*temp;//重量 arr[j].b=pi*temp;//价值++j;ci-=temp;temp*=2; }arr[j].a=wi*ci;arr[j].b=pi*ci;++j;//这个地方一定要注意,j++,是不能少的,因为while循环可能进不去j的值一直等于1 }//开始没有加,找了好长时间都没有发现错误 for(i=1;i<j;++i){for(int k=w;k>=arr[i].a;--k)f[k]=max(f[k],f[k-arr[i].a]+arr[i].b);}printf("%lld\n",f[w]);return 0;}</span>
0 0
- 51nod多重背包问题
- 51nod 多重背包问题
- 51nod-【多重背包问题】
- 51nod-1086 背包问题(多重背包)
- 51nod 多重背包问题 (dp)
- 多重背包问题(51Nod 1086)
- 51nod--多重背包
- 51nod 1086 背包问题 V2(多重背包问题)
- 51nod oj 1086 背包问题 V2 【多重背包问题】
- 51nod 1086 背包问题 V2 (多重背包问题)
- 51Nod 1086背包问题V2(多重背包)
- 51Nod 1086 背包问题 V2(二进制多重背包)
- 51nod 1086 背包问题 V2(多重背包)
- 51nod 1086 背包问题V2(巧妙拆分多重背包)
- 51nod 1086 背包问题 V2 多重背包
- 51nod 1086 背包问题v2 多重背包
- 51nod 1086 背包问题 V2(多重背包)
- 51Nod 1086 背包问题 V2(多重背包)
- java 不用内置函数开根号
- springmvc的日期转换器和编码过滤器
- 聊天ListView
- 分布式文件系统 FastDFS学习
- 贝塞尔曲线
- 51nod-【多重背包问题】
- Java Enum
- Java NIO原理图文分析及代码实现
- Zxing解析二维码
- [BZOJ3242][Noi2013]快餐店(树形dp+线段树)
- 详细图解数据库约束
- 获取与手机屏幕适中的图片
- ViewGroup的测量
- Android 仿微信语音录音小控件