求问怎么过不了样例,????
查看原帖
求问怎么过不了样例,????
866969
telankesi楼主2023/4/3 20:50

using namespace std;
int m, n;
int a[100000];
long long f[10000][10000];
long long fun(int x, int k) {
	if (x == n + 1)return 0;
	if (k > m)return 0;
	if (k == m)return 1;
	if (f[x][k])return f[x][k];
	long long ans = 0;
	for (int i = 0; i <= a[x]; i++) {
		ans = (ans + fun(x + 1, k + i)) % 1000007;
	}
	f[x][k] = ans;
	return ans;
}
int main() {
	scanf("%d %d", &n, &m);
	for (int i = 1; i <= n; i++)
		scanf("%d", &a[i]);
	printf("%lld", fun(1, 0));
}
2023/4/3 20:50
加载中...