Hdu-2069_Coin Change
来源:互联网 发布:crm软件的使用方法 编辑:程序博客网 时间:2024/03/28 23:02
Hdu-2069_Coin Change
题意:有若干5种面值的硬币,分别是1分,5分,10分,20分,50分。求现在表示钱数n(n<250),有多少种方案?
乍一看是母函数的题,但是后面说,每一种方案 硬币数目不超过100;
我们可以看出,该题就是指定因子的整数划分。
用动态规划,dp[j][k]=dp[j][k] + dp[j-1][k-b[i]];
注意:测试用例有n=0的情况,正确的结果应该输出1。这里wa了!汗。
#include <iostream>#include <cstdio>#include <cstring>#include <vector>using namespace std;#define M 252int money[5]={1,5,10,25,50};int dp[102][M];void solve(){ memset(dp,0,sizeof(dp)); dp[0][0]=1;//注意初始化 int i,j,k; for(i=0;i<5;i++) for(j=1;j<=100;j++)//硬币个数 { for(k=money[i];k<M;k++)//k是组合得到的money 数 dp[j][k]=dp[j][k] + dp[j-1][k-money[i]]; }}int main(){ solve(); int n,j,ans; while(cin>>n) { if(n==0){printf("1\n");continue;} ans=0; for(j=1;j<=n&&j<=100;j++) ans+=dp[j][n]; cout<<ans<<endl; } return 0;}
- Hdu-2069_Coin Change
- UVA 674_Coin Change
- HDU 2069 Coin Change
- hdu 2069 Coin Change
- HDU 2069 Coin Change
- HDU 2069 Coin Change
- hdu 2069 Coin Change
- HDU 2069 Coin Change
- hdu 2069 Coin Change
- hdu 2069 Coin Change
- hdu-2069-Coin Change
- HDU 2069 Coin Change
- hdu---2069Coin Change
- HDU 2069 Coin Change
- HDU 2069 Coin Change
- HDU-2069-Coin Change
- hdu 2069 Coin Change
- HDU#2069: Coin Change
- Storyboard全解析-第二部分
- Hibernate 对象的三种状态
- 随手笔记之VC++(六)
- 黑马程序员--05.类加载器--02【抽象类ClassLoader】【JVM加载类的过程】
- DEV控件的Gridview小技巧
- Hdu-2069_Coin Change
- 为什么打印出The window而不是My Object?
- 高性能网络编程3----TCP消息的接收
- Mac下启动和停止Mysql服务
- 如何绕过 Appstore 做到在不需越狱的情况下安装盗版软件的?
- 使用xstream对xml的写入
- Oracle Data Guard 重要配置参数
- 基于XMPP的IOS聊天客户端程序(XMPP服务器架构)
- QT安装需要的资源