UVA - 147 Dollars

来源:互联网 发布:java中实现多线程方法 编辑:程序博客网 时间:2024/06/15 09:33
题意:输出组合的方法种数,将单位同一就可以了
#include <iostream>#include <cstdio> #include <algorithm>#include <cstring>using namespace std;const int MAXN = 30005;long long dp[MAXN];int money[11] = {5,10,20,50,100,200,500,1000,2000,5000,10000};int main(){    memset(dp,0,sizeof(dp));    dp[0] = 1;    for (int i = 0; i < 11; i++)        for (int j = money[i]; j <= MAXN; j++)            dp[j] += dp[j - money[i]];    int a,b;    while (scanf("%d.%d",&a,&b) != EOF && a + b){        int ans = a * 100 + b;        double tmp = a + b * 0.01;        printf("%6.2lf%17lld\n",tmp,dp[ans]);    }    return 0;}


原创粉丝点击