题解
2023-06-04 13:31:29
发布于:上海
34阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
#define MEM(a) memset(a,0,sizeof(a));
#define inf 0x3f3f3f3f
#define F (1000007)
#define MAXN (100+5)
typedef long long ll;
int arr[MAXN];
int f[MAXN][MAXN];
string str[MAXN];
int main(){
int n,m;
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>arr[i];
}
f[0][0]=1;
for(int i=1;i<=n;i++){
for(int j=0;j<=m;j++){
for(int k=0;k<=min(j,arr[i]);k++){
f[i][j]=(f[i][j]+f[i-1][j-k])%F;
}
}
}
cout<<f[n][m]<<endl;
return 0;
}
这里空空如也
有帮助,赞一个