代码:
#include<bits/stdc++.h>
using namespace std;
int m,n;
int f[30001];
int w[101];
int main()
{ int i,j,ans=0;
cin>>n>>m;
for(i=1;i<=n;i++)
cin>>w[i];
for(i=1;i<=n;i++)
for(j=m;j>=1;j--)
{ int s=1;
if(w[i]<=j)
{ if(f[j-w[i]]+w[i]==f[j])
s=2;
f[j]=max(f[jw[i]]+w[i],f[j]);
}
else
f[j]=f[j];
if(f[j]==m)
ans+=s;
}
cout<<ans;
return 0;
}