[Codeforces 1214A]Optimal Currency Exchange(贪心)

题面

题面较长,略

分析

这个A题稍微有点思维难度,比赛的时候被孙了一下

贪心的思路是,我们换面值越小的货币越优。如有1,2,5,10,20,50,那么我们尽量用面值为1的。如果我们把原始货币换成面值为x的货币,设汇率为d,那么需要的原始货币为dx的倍数。显然dx越小,剩下的钱,即n取模dx会尽量小。

然后就可以枚举换某一种货币的数量,时间复杂度\(O(\frac{n}{d})\)

代码

#include<iostream>
#include<cstdio>
#define INF 0x3f3f3f3f
using namespace std;
int n,d,e;
int main(){
scanf("%d %d %d",&n,&d,&e);
e*=5;
int ans=INF;
for(int i=0;i*d<=n;i++){
ans=min(ans,n-i*d-(n-i*d)/e*e);
}
printf("%d\n",ans);
}

最新文章

  1. nil、Nil、NULL和NSNull的理解
  2. Visual Studio 2013 Nuget控制台无法找到程序包
  3. C#中的线程二(Cotrol.BeginInvoke和Control.Invoke)
  4. eclipse打不开,报错 &quot;java was started with exit code=13&quot;
  5. 谈谈我的编程之路---WAMP(一)
  6. POJ 1364 King --差分约束第一题
  7. [原创] 关于quartz (spring 中的任务调度器)时间配置
  8. MM1排队系统
  9. IOS第三方地图-百度地图集成
  10. HDU1106 排序
  11. build/core/config.mk
  12. Android studio快捷键Windows版本
  13. Clone Graph 解答
  14. TImage也有OnClick事件,可以当按钮使用,配上合适的图片(背景透明,效果前凸)更是几乎以假乱真
  15. 令人费解的java泛型
  16. R+先知︱Facebook大规模时序预测『真』神器——Prophet(遍地代码图)
  17. shell-----sed命令详解
  18. python中os.path模块简介
  19. java节假日
  20. ISP PIPLINE (一) BLC 以及 线性化

热门文章

  1. 【shell】sed后向引用替换文本
  2. mysql 特殊符号
  3. Mysql基本原理和概念
  4. string [线段树优化桶排]
  5. sh_04_累加求和
  6. 苹果CMSv10对接微信公众号教程
  7. BOM和DOM的操作
  8. MyBatis框架之mybatis逆向工程自动生成代码
  9. pdf.js浏览中文pdf乱码的问题解决
  10. vim系统剪切板