背包问题的方案数(01)

来源:互联网 发布:知乎提问最多的用户 编辑:程序博客网 时间:2024/06/07 09:35

题见洛谷

#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<cmath>#define LL long longusing namespace std;int a[200];LL f[10001];int main(){    int n,m;    scanf("%d%d",&n,&m);    for(int i=1;i<=n;i++)      scanf("%d",&a[i]);    f[0]=1;//初始化!!!    for(int i=1;i<=n;i++)     for(int j=m;j>=a[i];j--)//01背包     {        f[j]+=f[j-a[i]];     }    printf("%lld",f[m]);    return 0;}
0 0
原创粉丝点击