#include<fstream>
using namespace std;
const int N(108),MODN(1000007);
int a[N],f[N][N]={0};
int main()
{
ifstream cin("flower.in");
ofstream cout("flower.out");
int n,m;
cin>>n>>m;
for (int i=1;i<=n;i++) cin>>a[i];
for (int i=0;i<=a[1];i++) f[1][i]=1;
for (int i=2;i<=n;i++)
{
f[i][0]=1;
for (int j=1;j<=m;j++)
for (int k=0;k<=a[i];k++)
if (j-k>=0)
f[i][j]=(f[i][j]+f[i-1][j-k])%MODN;
}
cout<<f[n][m]<<endl;
return 0;
}
posted on 2012-11-27 15:39
龙在江湖 阅读(1324)
评论(1) 编辑 收藏 引用 所属分类:
动态规划 、
竞赛题解_NOIP