hdu1171 Big Event in HDU
来源:互联网 发布:华师在线网络教育怎么 编辑:程序博客网 时间:2024/05/16 11:27
hdu1171 Big Event in HDU
标签:01背包
题目链接
/* 题意:有N种物品,每种价值为V,数量为M。平分为A,B两堆,A,B之差尽可能小,且A不小于B。 思路:01背包变形,用总价值的一半total/2去选择最多价值的物品。*/#include <stdio.h>#include <string.h>#include <algorithm>using namespace std;const int maxn = 125555 + 5;int dp[maxn], value[5005];int main(){ int N; while(scanf("%d", &N) && N > 0) { int total = 0, pos = 0; int a, b; for(int i = 0; i < N; i++) { scanf("%d %d", &a, &b); total += a * b; for(int j = 0; j < b; j++) value[pos++] = a; /// } memset(dp, 0, sizeof(dp)); //ZeroOnePack template for(int i = 0; i < pos; i++) for(int j = total / 2; j >= value[i]; j--) dp[j] = max(dp[j], dp[j - value[i]] + value[i]); printf("%d %d\n", max(dp[total / 2], total - dp[total / 2]), min(dp[total / 2], total - dp[total / 2])); } return 0;}
阅读全文
0 0
- HDU1171 Big Event in HDU
- HDU1171--Big Event in HDU
- HDU1171 Big Event in HDU
- HDU1171 Big Event in HDU
- hdu1171 Big Event in HDU
- hdu1171 Big Event in HDU
- HDU1171-Big Event in HDU
- hdu1171 Big Event in HDU
- HDU1171 Big Event in HDU
- hdu1171 Big Event in HDU
- hdu1171之Big Event in HDU
- Big Event in HDU hdu1171 多重背包
- HDU1171:Big Event in HDU(01背包)
- HDU1171:Big Event in HDU(多重背包)
- hdu1171 Big Event in HDU (多重背包)
- hdu1171---Big Event in HDU(多重背包)
- hdu1171 Big Event in HDU 01-背包
- HDU1171 Big Event in HDU 【母函数】
- php函数var_dump() 、print_r()、echo()
- 简图记录-ARM嵌入式基础(概念、工作模式、寄存器、寻址)
- 对数组的简单总结
- 关于springMVC中@ModelAttribute注解的隐含model属性名
- Threadlocal
- hdu1171 Big Event in HDU
- Java基础(集合卷)--List
- 机器学习_矩阵的l21范数/行稀疏/结构稀疏
- 神经网络中Epoch、Iteration、Batchsize相关理解和说明
- wpf绘制圆环,实现图片镂空
- httpd代理服务器和缓存学习
- OJ1105: 判断友好数对(函数专题)
- headfirst选择排序
- 关于为什么引入补码,反码的原因