HDU 2191 珍惜现在,感恩生活(多重背包)
来源:互联网 发布:成都理工大学网络教育 编辑:程序博客网 时间:2024/06/04 20:11
OJ题目 : click here ~~
题目分析:就一个多重背包,在输入的时候进行二进制拆分,接下来就与01背包一样处理了。关于二进制拆分,这里讲解的不错~
AC_CODE
int v[1002] , c[1002];int dp[1002];int main(){ int t; cin >> t; while(t--) { int n ,m , i , j , a , b , d ,k = 0; cin >> n >> m; for(i =1;i <= m;i++) { scanf("%d%d%d",&a ,&b ,&d); for(j = 1;j <= d;j <<= 1)//进行二进制拆分 { c[k] = j*a; v[k++] = j*b; d -= j; } if(d > 0) { c[k] = d*a; v[k++] = d*b; } } memset(dp , 0 , sizeof(dp)); for(i = 0;i < k;i++) for(j = n;j >= c[i];j--) dp[j] = max(dp[j] , dp[j - c[i]] + v[i]); cout << dp[n] << endl; } return 0;}
0 0
- HDU 2191 珍惜现在,感恩生活(多重背包)
- [ACM] hdu 2191 珍惜现在,感恩生活 (多重背包)
- HDU 2191 珍惜现在,感恩生活(多重背包)
- HDU 2191 珍惜现在,感恩生活 (多重背包)
- Hdu 2191 珍惜现在,感恩生活 (多重背包)
- HDU 2191 珍惜现在,感恩生活 多重背包 .
- 珍惜现在,感恩生活(多重背包)
- HDOJ 2191 珍惜现在,感恩生活(多重背包)
- HDU-2191 珍惜现在,感恩生活(多重背包,二进制优化)
- 珍惜现在,感恩生活-多重背包问题
- HDU 2191 珍惜现在,感恩生活。将多重背包经二进制划分变为01背包。
- HDU 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(多重背包转01背包)
- hdu 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 多重背包
- hdu 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(多重背包)
- HDU 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 多重背包
- hdu 2191悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 (多重背包)
- hdu 2191 (多重背包)悼念512汶川大地震遇难同胞——珍惜现在,感恩生活
- HDU 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(多重背包)
- 《Ext JS 4.2实战》目录
- 一个和spring整合的依赖注入的servlet,子类可自动装配依赖Bean
- VC++中数值与字符串相互转化(总结)
- Sweet Snippet系列 之 元素删除
- UIButton 设置title位置
- HDU 2191 珍惜现在,感恩生活(多重背包)
- kmp的next数组的运用(求字符串的最小循环节)
- tomcat内存溢出
- 使用Java语言编写的Demo:上传文件至百度网盘(Baidu PCS)
- 计数排序详解
- Ubuntu12.04 32位下安装OpenCV
- JavaScript/jQuery、HTML、CSS 构建 Web IM 远程及时聊天通信程序
- 灯火阑珊处等你回眸
- yiic创建YII应用