洛谷P1474货币系统——背包方案计数
题目:https://www.luogu.org/problemnew/show/P1474
完全背包,注意方案计数的方法。
代码如下:
#include<iostream> #include<cstdio> using namespace std; long long v,n,w[30],f[30005]; int main() { scanf("%lld%lld",&v,&n); for(int i=1;i<=v;i++) scanf("%lld",&w[i]); for(int i=1;i<=v;i++) { if(w[i])f[w[i]]+=1; for(int j=w[i];j<=n;j++) f[j]+=f[j-w[i]]; // f[j]=max(f[j],f[j-w[i]]+1); } printf("%lld",f[n]); return 0; }