题目传送门
解题思路:
一个披着外壳的完全背包.
AC代码:
1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 long long v,n,a[30],f[10001]; 7 8 int main() { 9 scanf("%lld%lld",&n,&v); 10 for(int i = 1;i <= n; i++) 11 scanf("%lld",&a[i]); 12 f[0] = 1; 13 for(int i = 1;i <= n; i++) 14 for(int j = a[i];j <= v; j++) 15 f[j] += f[j - a[i]]; 16 printf("%lld",f[v]); 17 return 0; 18 }