首页 > 其他 > 详细

NYOJ--郁闷的C小加(一)

时间:2014-04-17 11:31:41      阅读:473      评论:0      收藏:0      [点我收藏+]
题意:

給你一個金額( n cents),請你回答共有多少種硬幣組合的方式。例如:n=11,那麼你可以有以下4種硬幣的組合:

  1. 1個 10 cent的硬幣加上1個 1 cent的硬幣
  2. 2個 5 cent的硬幣加上1個 1 cent的硬幣
  3. 1個 5 cent的硬幣加上6個 1 cent的硬幣
  4. 11個 1 cent的硬幣

p.s 美國的零錢共有以下5種硬幣以及其面值:

  • penny, 1 cent
  • nickel, 5 cents
  • dime, 10 cents
  • quarter, 25 cents
  • half-dollar, 50 cents

請注意:n=0 我們算他是有一種方式。

思路:又是这个类型的动态规划,[动态规划]UVA357 - Let Me Count The Ways  [动态规划]UVA147 - Dollars 这些都是同一个类型的题目。

#include<iostream>
#include<cstring>

using namespace std;

const int maxn=8000;

int coin[5]={1,5,10,25,50};

long long dp[maxn]={1};

int main()
    {
        int num;
        int i,j;
        for(i=0;i<5;i++)
        {
            for(j=0;j<maxn-100;j++)
            {
                dp[j+coin[i]]=dp[j+coin[i]]+dp[j];
            }
        }
        while(cin>>num)
            {
                cout<<dp[num]<<endl;
            }
        return 0;
    }


NYOJ--郁闷的C小加(一),布布扣,bubuko.com

NYOJ--郁闷的C小加(一)

原文:http://blog.csdn.net/computer_liuyun/article/details/23911337

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!