//解释链接 “背包九讲 第二讲 完全背包”http://acm.sdibt.edu.cn/blog/?p=849
//例题链接http://acm.sdibt.edu.cn/JudgeOnline/problem.php?id=2332

#include <stdio.h>
#include <string.h>

#define N 100005
#define intt long long

intt dp[N];

int main(){
    int v,m,a,j;
    while(scanf(“%d%d”,&v,&m)!=EOF){
        memset(dp,0,sizeof(dp));
        dp[0]=1;
        while(v–){
            scanf(“%d”,&a);
            for(j=a;j<=m;j++)
                dp[j]+=dp[j-a];
        }
        printf(“%lld\n”,dp[m]);
    }
    return 0;
}

发表评论

电子邮件地址不会被公开。

Post Navigation