现在的位置: 首页 > 综合 > 正文

货币系统

2015年12月27日 ⁄ 综合 ⁄ 共 441字 ⁄ 字号 评论关闭

Problem Description

给你一个n种面值的货币系统,求组成面值为m的货币有多少种方案。

Input

输入有多组数据,每组数据第一行:n,m的值,后面n行为每种货币的面值。

Output

对于每组数据输出组成面值为m的货币的方案数。

Sample Input

3 10                                
1                                    
2                                      
5   

Sample Output

10

# include<cstdio>
# include<cstring>
# include<iostream>
using namespace std;

__int64 f[10000];

int main()
{
    //freopen("a.txt","r",stdin);
    int n,m;
    while(~scanf("%d%d",&n,&m))
    {
        memset(f,0,sizeof(f));
        f[0]=1;
        int i,j,k;
        for(i=0;i<n;i++)
        {
            scanf("%d",&k);
            for(j=k;j<=m;j++)
                f[j]+=f[j-k];
        }
        printf("%I64d\n",f[m]);
    }
    return 0;
}
【上篇】
【下篇】

抱歉!评论已关闭.