【NYOJ 456】
来源:互联网 发布:surface laptop知乎 编辑:程序博客网 时间:2024/06/03 06:57
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=456
题目就是要你均分,如果不能均分就尽量使两堆重量/票价差距最小。可以想象成有一堆物品,两个容器(容量和除以2),只要保证把其中一个容器的容积尽量加满(当然恰好能满最好),这就转化成了0,1背包问题了。代码就简单了。两段代码几乎一样,所以给出邮票就行
#include<cstdio>#include<iostream>#include<cstring>using namespace std;#define max(a,b) (a>b?a:b)int a[1005],dp[100005];int main(){ int sum,n,ncase; scanf("%d",&ncase); while(ncase--){ sum=0; memset(dp,0,sizeof(dp)); scanf("%d",&n); for(int i=0;i<n;i++){ scanf("%d",&a[i]); sum+=a[i]; } int k=sum/2; for(int i=0;i<n;i++) for(int j=k;j>=a[i];j--){ dp[j]=max(dp[j],dp[j-a[i]]+a[i]); } printf("%d\n",sum-dp[k]*2); }}
0 0
- NYOJ 325 &&NYOJ 456
- 【NYOJ 456】
- Nyoj 456
- nyoj 456
- nyoj 325 和 nyoj 456【经典dp】
- NYOJ
- NYOJ
- NYOJ
- NYOJ
- NYOJ
- NYOJ
- NYOJ
- NYOJ
- NYOJ
- NYOJ
- NYOJ
- NYOJ
- NYOJ
- socket 实例实现简单通信
- 设计模式C++实现(1)——工厂模式
- 方式地方都是反倒是
- Android中图片过大造成内存溢出,OOM(OutOfMemory)异常解决方法(4)
- qt基础
- 【NYOJ 456】
- JPEG文件编/解码详解
- 2011蓝桥杯【初赛试题】歌赛新规则
- htaccess文件使用方法
- 上课笔记-运营管理(一)
- Cloudera Flume简介
- 安装memcached-1.4.16找不到libevent-2.0.so.5
- Chrome调试JS报错“Uncaught ReferenceError: xl_chrome_menu is not defined”的解决办法
- SQL语句的并集UNION,交集JOIN(内连接,外连接),交叉连接(CROSS JOIN笛卡尔积),差集(NOT IN)