算法描述
- 完全背包问题求解方案数
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int M = 10010;
int n, m;
long long f[M];
int main()
{
scanf("%d%d", &n, &m);
f[0] = 1;
for (int i = 0; i < n; i ++)
{
int v;
scanf("%d", &v);
for (int j = v; j <= m; j ++)
f[j] += f[j - v];
}
printf("%lld\n", f[m]);
return 0;
}