记录编号 |
237144 |
评测结果 |
AAAATTTTTT |
题目名称 |
Cool |
最终得分 |
40 |
用户昵称 |
liu_runda |
是否通过 |
未通过 |
代码语言 |
C++ |
运行时间 |
6.009 s |
提交时间 |
2016-03-16 10:42:31 |
内存使用 |
62.23 MiB |
显示代码纯文本
#include<cstdio>
int w[3005],v[3004];
int f[6005][3005];//f[i][j]:i件物品 重量不超过j
int max(int a,int b){
return a>b?a:b;
}
int main(){
freopen("cool.in","r",stdin);
freopen("cool.out","w",stdout);
int n,m;scanf("%d %d",&n,&m);
int totw=n,totn=n+m;
for(int i=1;i<=n;++i){
w[i]=i-1;
scanf("%d",&v[i]);
}
for(int i=1;i<=n;++i){
for(int k=1;k<=totn;++k){
for(int j=w[i];j<=totw;++j){
if(f[k][j]==0)f[k][j]=f[k-1][j-w[i]]+v[i];
else f[k][j]=max(f[k][j],f[k-1][j-w[i]]+v[i]);
}
}
}
printf("%d",f[totn][totw]);
fclose(stdin);fclose(stdout);
return 0;
}