USACO 2008 Dec Silver 1.Hay For Sale
来源:互联网 发布:知远战略研究所招聘 编辑:程序博客网 时间:2024/05/16 11:08
一打眼就是背包嘛。原始程序是这样的。
#include<stdio.h>#include<algorithm>using namespace std;int n,m;int f[55000];int main(){ scanf("%d %d",&n,&m); f[0]=1; for(int i=1;i<=m;i++) { int x; scanf("%d",&x); for(int j=n;j>=x;j--) { f[j]=max(f[j-x],f[j]); } } for(int i=n;i>=0;i--) { if(f[i]!=0) { printf("%d",i); return 0; } }}但会发现超时。。。于是就优化一下喽,将出现过的体积数放在一个数组里。
#include<stdio.h>#include<algorithm>using namespace std;int n,m;int cnt;int que[5500];int vis[55000];int cmp(int a,int b){return a>b;}int main(){scanf("%d %d",&n,&m);que[1]=0;cnt=1;vis[0]=1;for(int i=1;i<=m;i++){int x;scanf("%d",&x);if(x>n)continue;int t=0;for(int j=1;j<=cnt;j++){if(vis[que[j]+x]==0&&que[j]+x<=n){t++;que[cnt+t]=que[j]+x;vis[que[j]+x]=1;}}cnt+=t;}sort(que+1,que+1+cnt,cmp);printf("%d",que[1]);}
然后呢?就过了。
0 0
- USACO 2008 Dec Silver 1.Hay For Sale
- [Usaco2008 Dec]Hay For Sale 购买干草
- [Usaco2008 Dec]Hay For Sale 购买干草
- BZOJ 1606: [Usaco2008 Dec]Hay For Sale 购买干草
- bzoj1606[Usaco2008 Dec]Hay For Sale 购买干草
- 1606: [Usaco2008 Dec]Hay For Sale 购买干草
- BZOJ 1606: [Usaco2008 Dec]Hay For Sale 购买干草
- [BZOJ1606] [Usaco2008 Dec]Hay For Sale 购买干草
- bzoj1606【Usaco2008 Dec】Hay For Sale 购买干草
- 【bzoj 1606】[Usaco2008 Dec]Hay For Sale 购买干草
- BZOJ1606: [Usaco2008 Dec]Hay For Sale 购买干草
- 1606: [Usaco2008 Dec]Hay For Sale 购买干草
- [bzoj 1606] [Usaco2008 Dec]Hay For Sale 购买干草 (dp)
- BZOJ1606: [Usaco2008 Dec]Hay For Sale 购买干草
- [bzoj1606][Usaco2008 Dec]Hay For Sale 购买干草
- BZOJ1606: [Usaco2008 Dec]Hay For Sale 购买干草
- 背包DP-BZOJ-1606- [Usaco2008 Dec]Hay For Sale 购买干草
- 【bzoj1606】 【Usaco2008 Dec】Hay For Sale (背包dp)题解&代码
- java List 2个List 合并后去重, 或单个List 去重
- Activity的onPause()官方文档翻译
- dm368用的mt9p031 sensor datasheet名词详解
- 编程这几天出现的很2的问题!!!
- Android中外部程序调用方法总结
- USACO 2008 Dec Silver 1.Hay For Sale
- 用SqlBulkCopy将数据复制到有自增字段的表中怎么办?结果的顺序不对怎么办?
- android 外挂字幕接口
- iOS文件操作NSFileManager和NSFileHandle
- ajax跨域三种方案
- Andorid-15k+的面试题
- Cocoapods安装及使用
- new HashMap 发生了什么事情?
- httpclient模拟登陆,不支持https的问题