比赛 |
20160420s |
评测结果 |
MMMMMMMMMM |
题目名称 |
买汽水 |
最终得分 |
0 |
用户昵称 |
YGOI_真神名曰驴蛋蛋 |
运行时间 |
0.000 s |
代码语言 |
C++ |
内存使用 |
0.00 MiB |
提交时间 |
2016-04-20 08:58:57 |
显示代码纯文本
#include<cstdio>
#include<algorithm>
using namespace std;
int f[100000001]={0};
int w[41];
int n,num,k=0;
bool s[41];
inline int max(const int &a,const int &b){return a<b?b:a;}
void Int(){
freopen("drink.in","r",stdin);
freopen("drink.out","w",stdout);
scanf("%d %d",&n,&num);
int ttt=0;
for(int i=1;i<=n;++i){
scanf("%d",&w[i]);
ttt+=w[i];
}
if(ttt<=num)k=ttt;
}
int doing(){
Int();
if(k!=0){
printf("%d",k);return 0;
}
for(int i=1;i<=n;++i){
for(int j=num;j>=w[i];--j){
f[j]=max(f[j],f[j-w[i]]+w[i]);
}
}
printf("%d",f[num]);
return 0;
}
int a=doing();
int main(){;}