蓝桥集训之货币系统
-
核心思想:背包
-
#include <iostream> #include <cstring> #include <algorithm> using namespace std; const int N = 30,M = 10010; typedef long long LL; LL f[M]; int w[N]; int n,m; int main() { cin>>n>>m; for(int i=1;i<=n;i++) cin>>w[i]; f[0] = 1; for(int i=1;i<=n;i++) for(int j=w[i];j<=m;j++) f[j] += f[j-w[i]]; cout<<f[m]; }