AcWing 1021. monetary system (fully evaluated several solutions backpack)

Topic links: Click here

Here Insert Picture Description

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>

using namespace std;
typedef long long ll;
const int N = 3010;

ll f[N];

int main()
{
    int n, m;
    scanf("%d%d", &n, &m);
    
    f[0] = 1;
    for(int i = 1; i <= n; ++i)
    {
        int a;
        scanf("%d", &a);
        
        for(int j = a; j <= m; ++j)
            f[j] += f[j - a];
    }
    
    printf("%lld\n", f[m]);
    
    return 0;
}
Published 844 original articles · won praise 135 · Views 150,000 +

Guess you like

Origin blog.csdn.net/qq_42815188/article/details/104978374