51nod 1007 正整数分组 背包思路题
来源:互联网 发布:优化人才管理是什么 编辑:程序博客网 时间:2024/06/05 22:44
思路:判断这n个数能组成的数有哪些, 枚举差值,维护最小值。
看到sum的范围小于10000就得想到背包了。。。
#include <bits/stdc++.h>using namespace std;const int inf =0x3f3f3f3f;typedef long long LL;const int MAXN = 10005;const int mod = 1e9+7;int a[105];int dp[MAXN];int main(){ int n; while(~scanf("%d", &n)) { int ans=inf, sum=0; for(int i=1; i<=n; ++i) { scanf("%d", &a[i]); sum+=a[i]; } memset(dp, 0, sizeof(dp)); dp[0]=1; for(int i=1;i<=n;++i) for(int j=sum;j>=a[i];--j) dp[j]=max(dp[j], dp[j-a[i]]); for(int i=1;i<=sum/2;++i) if(dp[i]) ans=min(ans, sum-i-i); printf("%d\n", ans); } return 0;}
阅读全文
0 0
- 51nod 1007 正整数分组 背包思路题
- 51nod 1007 正整数分组 01背包
- 51Nod 1007 正整数分组 01背包
- 51nod 1007 正整数分组【01背包】
- 51nod 1007 正整数分组(01背包)
- 51nod 1007 正整数分组 01背包
- 51nod 1007 正整数分组(背包)
- 51Nod 1007 正整数分组(01背包的变形)
- 51nod 1007 正整数分组 (类01背包问题)
- 51Nod 1007 正整数分组(01背包变形)
- 51nod 1007 正整数分组(平分) 01背包
- 【51Nod】1007 - 正整数分组(01背包)
- 51nod 1007 正整数分组(01背包)
- 51 NOD 1007 正整数分组(0-1背包)
- 51nod 1007 正整数分组(类背包)
- 51nod 1007 正整数分组(背包/dp)
- 51Nod 1007 正整数分组 0-1背包
- 51Nod-正整数分组(01背包)
- Address already in use: JVM_Bind:8080
- 133. Clone Graph
- 数组的最大子序列之和
- 解决org.apache.rat:apache-rat-plugin:0.8:check (default) on project hbase: Too many unapproved license
- FutureTask使用demo
- 51nod 1007 正整数分组 背包思路题
- html/css移动界面侧滑效果
- 简单的滚动条事件
- B. Polycarp and Letters
- index
- webpack 零基础配置
- jar包调用dll、lib等外部库文件解决办法
- 51NOD-1414 冰雕
- MySQL