暑期dp46道(32)--hdoj 1171 Big Event in HDU 多重背包:
来源:互联网 发布:交换机端口标签 编辑:程序博客网 时间:2024/05/02 01:54
题目链接:hdoj 1171
多重背包问题,由于数据量较小,所以可以不用二进制优化。
代码:
#include<cstdio>#include<queue>#include<cstring>#include<string>#include<stack>using namespace std;#define M(a) memset(a,0,sizeof(a))#define Max(a,b) ((a>b)?a:b)#define Min(a,b) ((a<b)?a:b)#define debug 0const int maxn = 50 + 5;int ans[250005], w[maxn], num[maxn], n;int total;void Do(){int t = total / 2;for (int i = 1; i <= n; i++)for (int k = 0; k <= t; k++)for (int j = 0; j*w[i] <= k&&j <= num[i]; j++){ans[k] = Max(ans[k], ans[k - j*w[i]] + j*w[i]);}printf("%d %d\n", total - ans[t], ans[t]);}int main(){#if debugfreopen("in.txt", "r", stdin);#endif//debugwhile (~scanf("%d", &n)){if (n < 0)break;M(ans);total = 0;for (int i = 1; i <= n; i++){scanf("%d%d", &w[i], &num[i]);total += w[i] * num[i];}Do();}return 0;}
1 0
- 暑期dp46道(32)--hdoj 1171 Big Event in HDU 多重背包:
- HDOJ Big Event in HDU 多重背包
- HDOJ 1171 Big Event in HDU (多重背包) / (母函数)
- HDOJ题目1171Big Event in HDU(多重背包)
- HDOJ 1171 Big Event in HDU(多重背包)
- HDU/HDOJ 1171 Big Event in HDU 01背包、多重背包、母函数
- HDOJ 1171 Big Event in HDU(多重背包转化01背包 or 母函数)
- hdu 1171 Big Event in HDU(01背包&多重背包)
- HDU Big Event in HDU - 多重背包
- hdoj 1171 Big Event in HDU(母函数/多重背包)
- hdu 1171多重背包Big Event in HDU
- hdu 1171 Big Event in HDU 多重背包
- hdu 1171 Big Event in HDU(多重背包可行性)
- HDU 1171 Big Event in HDU(多重背包)
- Hdu 1171 Big Event in HDU (多重背包)
- HDU 1171 Big Event in HDU(多重背包)
- hdu 1171 Big Event in HDU(多重背包)
- hdu 1171 Big Event in HDU 多重背包基础题
- 判断两个字符串是否互为旋转词
- JZOJ8.13数字游戏
- python_openCV学习笔记(1) 绘制openCV的logo
- Http协议
- CodeForces 706B Interesting drink
- 暑期dp46道(32)--hdoj 1171 Big Event in HDU 多重背包:
- 常见的web攻击有哪些
- 在Eclipse上安装git插件EGit
- android中数据库的拷贝
- Android自学笔记(三)实现2048小游戏
- 关于dubbo的一些性能测试参考文档
- Android 使用ViewPager真正实现左右无限滑动(附源码)
- Gallery使用 主要记录一些 注意的地方
- 数组的指定初始化