洛谷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;
}
原文地址:https://www.cnblogs.com/Zinn/p/8458834.html