题解
2025-07-21 19:37:38
发布于:广东
0阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
#define int long long
int dp[10001]={0};
signed main(){
int m,n,tmp,cnt = 0;
cin >> n >> m;
for(int i = 0;i<n;i++){
cin >> tmp;
//printf("%d\n",dp[4]);
for(int j = m;j>0;j--){
if(dp[j]>=1&&j+tmp<=m){
// printf("%d %d %d %d\n",j,tmp,dp[j],dp[j+tmp]);
dp[j+tmp] += dp[j];
//printf(" %d\n",dp[j+tmp]);
}
}
if(tmp<=m){
dp[tmp] += 1;
}
}
cout<<dp[m];
}
这里空空如也
有帮助,赞一个