USACO 2.3.4 Money Systems dp

dp[i]+=dp[i-a];

dp[i]表示组成数 i 的方式的个数

View Code
 1 #include <stdio.h>
2
3 int main()
4 {
5 int n,m,i,j,a;
6 long long dp[10005]={0};
7 scanf("%d%d",&n,&m);
8 dp[0]=1;
9 for (i=0;i<n;i++)
10 {
11 scanf("%d",&a);
12 for (j=a;j<=m;j++)
13 {
14 dp[j]+=dp[j-a];
15 }
16 }
17 printf("%lld\n",dp[m]);
18 return 0;
19 }



posted @ 2011-10-29 23:19  104_gogo  阅读(129)  评论(0编辑  收藏  举报