Strange Bank(找零问题)
题目描述
为了使取钱变得困难,某家银行在一次操作中只允许其客户提取下列金额之一:
1日元(日本的货币)
6日元,62(=36)日元,63(=216)日元,…
9日元,92(=81)日元,93(=729)日元,…
总共需要多少个操作才能取出N日元?
您取的钱不能再存入银行。
约束
1≤N≤100000
N是整数。
输入
输入来自标准输入,格式如下:
N
输出
如果总共需要提取N日元,则打印x。
样例输入
Copy
127
样例输出 Copy
4
提示
#include<cstdio>
#include<iostream>
#include<algorithm>
#include<map>
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define INF 0x3f3f3f3f
inline int read()
{
int x=,f=;char ch=getchar();
while(ch<''||ch>''){if(ch=='-')f=-;ch=getchar();}
while(ch>=''&&ch<=''){x=x*+ch-'';ch=getchar();}
return x*f;
}
int dp[];
int a[],p;
int n;
void inint(){
scanf("%d",&n);
}
void inint1()
{
int ans=;
p=;
for(int i=;i<=;i++)
{
ans*=;
a[p++]=ans;
}
ans=;
for(int i=;i<=;i++)
{
ans*=;
a[p++]=ans;
}
a[p++]=;
sort(a,a+p);
}
int main()
{
inint();
inint1();
for(int i=;i<=n;i++)
dp[i]=INF;
for(int i=;i<p;i++) //硬币面值
{
for(int j=a[i];j<=n;j++)//dp[j]表示总数为j时所需的硬币数
dp[j]=min(dp[j],dp[j-a[i]]+);//dp[j-A]表示总和为j-A时,所需的硬币数,而且dp[j-A]+1也可使面值恰好为t
}
printf("%d\n",dp[n]);
return ;
}
Strange Bank(找零问题)的更多相关文章
- [Swift]LeetCode860. 柠檬水找零 | Lemonade Change
At a lemonade stand, each lemonade costs $5. Customers are standing in a queue to buy from you, and ...
- POJ 1252 Euro Efficiency(完全背包, 找零问题, 二次DP)
Description On January 1st 2002, The Netherlands, and several other European countries abandoned the ...
- [LeetCode] Coin Change 硬币找零
You are given coins of different denominations and a total amount of money amount. Write a function ...
- NYOJ995硬币找零(简单dp)
/* 题意:给你不同面额的硬币(每种硬币无限多),需要找零的面值是T,用这些硬币进行找零, 如果T恰好能被找零,输出最少需要的硬币的数目!否则请输出剩下钱数最少的找零方案中的最少硬币数! 思路:转换成 ...
- HDU3591找零,背包
题目大概的意思就是:小强用硬币买东西,硬币有N种,面值为Vi,店家有各种硬币都有无限个,而小强只有Ci个(分别对应Vi) 问最小交易硬币数,就是一个有找零的背包问题啦. 我的上一篇博客跟这hdu359 ...
- 【ACM小白成长撸】--贪婪法解硬币找零问题
question:假设有一种货币,它有面值为1分.2分.5分和1角的硬币,最少需要多少个硬币来找出K分钱的零钱.按照贪婪法的思想,需要不断地使用面值最大的硬币.如果找零的值小于最大的硬币值,则尝试第二 ...
- P3092 [USACO13NOV]没有找零No Change
题目描述 Farmer John is at the market to purchase supplies for his farm. He has in his pocket K coins (1 ...
- [USACO13NOV]没有找零No Change [TPLY]
[USACO13NOV]没有找零No Change 题目链接 https://www.luogu.org/problemnew/show/3092 做题背景 FJ不是一个合格的消费者,不知法懂法用法, ...
- [LeetCode] Lemonade Change 买柠檬找零
At a lemonade stand, each lemonade costs $5. Customers are standing in a queue to buy from you, and ...
- Leetcode 860. 柠檬水找零
860. 柠檬水找零 显示英文描述 我的提交返回竞赛 用户通过次数187 用户尝试次数211 通过次数195 提交次数437 题目难度Easy 在柠檬水摊上,每一杯柠檬水的售价为 5 美元. 顾 ...
随机推荐
- 性能优化 && 用户体验
性能优化 下拉菜单那种最好是点击时候请求,或者是查询时候请求 分页加载 用户体验 有加载.进度条.友好提示
- openlayers按坐标点播放
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- idea 2018.1.2激活方法,有效期至2099年
1. 下载破解补丁文件JetbrainsCrack-2.7-release-str.jar 链接: https://pan.baidu.com/s/1inWaS067RPte3ZkD6uDxOQ 密码 ...
- Oracle 中关于 Group By 子句与多行函数嵌套搭配使用的注意事项
目录 你需要知道的 啥叫单行函数 啥叫多行函数 如何理解这个概念 Group by 子句使用规则 看一道 071 考题 你需要知道的 提到 Group by 子句,你需要先理解一个东西:函数的分类.提 ...
- 小白月赛22 B : 树上子链
B:树上子链 考察点 : 树的直径 坑点 : long long, 是点权不是边权 一个点也算一条链 析题得侃: 关于树的直径 这道题考察的是树的直径,最好用树形DP来写,具体解释详见上述博客, 这道 ...
- js秒数倒计时
代码 /** * 调用回调函数 * @param callback 回调函数体 * @param args 参数 */ execCallback: function (callback, args) ...
- 求素数p的原根
定义: 设m>1,gcd(a,m)=1,使得成立的最小正整数d为a对模m的阶,记为δm(a) 如果δm(a)=φ(m),则称a是模m的原根 定理:设m>1,gcd(a,m)=1,那么正整数 ...
- springboot项目集成activity
1.按照上一篇博客,新建好springboot项目后,在项目pom.xml文件中添加activity依赖 <dependency> <groupId>org.activiti& ...
- [TJOI2013] 奖学金 - 堆
按 a 排序,暴力用堆维护两侧预处理, 然后枚举中位数即可 #include <bits/stdc++.h> using namespace std; #define int long l ...
- [JZOJ5060] 公路建设
题目描述 在Byteland一共有n个城市,编号依次为1到n,它们之间计划修建m条双向道路,其中修建第i条道路的费用为ci. Byteasar作为Byteland公路建设项目的总工程师,他决定选定一个 ...