题意:你现在有面额为A的纸币,现在需要面额为B的钱(可以是一张也可以是好多张拼成一张),有一台自动售货机,里面有任意价格的商品,售货机兑换出的零钱是随机的(比如找你0.03可能给你0.01+0.01+0.01也可能是0.01+0.02),那么问至少要花多少钱你肯定能兑换到所需要的面额。A, B ∈ {0.01, 0.02, 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10, 20, 50, 100} and A > B

思路:题意读错了...这里的意思不是你只能买一个东西,而是你买了之后可以用找零的钱继续买,那么如果0.01可以解决那么就是0.01,其他的只要用零钱继续0.01就可以了。

代码:

#include<set>
#include<map>
#include<cmath>
#include<queue>
#include<string>
#include<cstdio>
#include<cstring>
#include<sstream>
#include<algorithm>
typedef long long ll;
using namespace std;
const int maxn = + ;
const int MOD = 1e9 + ;
const int INF = 0x3f3f3f3f;
int main(){
int t, ca = ;
scanf("%d", &t);
while(t--){
double a, b;
scanf("%lf%lf", &a, &b);
printf("Case #%d: ", ca++);
if(b == 0.01){ //0.03
if(a == 0.02){
printf("0.01\n");
}
else if(a == 0.05){
printf("0.02\n");
}
else{
printf("0.02\n");
}
}
else if(b == 0.02){ //0.04 0.09
if(a == 0.05){
printf("0.01\n");
}
else{
printf("0.01\n");
}
}
else if(b == 0.05){ //0.09
printf("0.01\n");
}
else if(b == 0.1){ //0.39
if(a == 0.2) printf("0.01\n");
else if(a == 0.5) printf("0.02\n");
else printf("0.02\n");
}
else if(b == 0.2){ //0.49 0.99
if(a == 0.5) printf("0.01\n");
else printf("0.01\n");
}
else if(b == 0.5){ //0.99
printf("0.01\n");
}
else if(b == ){ //3.99
if(a == ) printf("0.01\n");
else if(a == ) printf("0.02\n");
else printf("0.02\n");
}
else if(b == ){ //4.99 9.99
if(a == ) printf("0.01\n");
else printf("0.01\n");
}
else if(b == ){ //9.99
printf("0.01\n");
}
else if(b == ){ //39.99
if(a == ) printf("0.01\n");
else printf("0.02\n");
}
else if(b == ){ //49.99 99.99
if(a == ) printf("0.01\n");
else printf("0.01\n");
}
else{ //99.99
printf("0.01\n");
}
}
return ;
}

UVALive 7503 Change(乱搞)题解的更多相关文章

  1. UVaLive 7503 Change (坑题。。。。。。)

    题意:给定两个人民币,问你花最少钱保证能够凑出另一个价格. 析:这个题最大的坑就是在,并一定是一次就凑出来,可以多次,然后就可以想了,如果要凑的数和1有关,特判,如果是2倍数,0.01就够了,否则就是 ...

  2. “盛大游戏杯”第15届上海大学程序设计联赛夏季赛暨上海高校金马五校赛题解&&源码【A,水,B,水,C,水,D,快速幂,E,优先队列,F,暴力,G,贪心+排序,H,STL乱搞,I,尼姆博弈,J,差分dp,K,二分+排序,L,矩阵快速幂,M,线段树区间更新+Lazy思想,N,超级快速幂+扩展欧里几德,O,BFS】

    黑白图像直方图 发布时间: 2017年7月9日 18:30   最后更新: 2017年7月10日 21:08   时间限制: 1000ms   内存限制: 128M 描述 在一个矩形的灰度图像上,每个 ...

  3. 2016 10 28考试 dp 乱搞 树状数组

    2016 10 28 考试 时间 7:50 AM to 11:15 AM 下载链接: 试题 考试包 这次考试对自己的表现非常不满意!! T1看出来是dp题目,但是在考试过程中并没有推出转移方程,考虑了 ...

  4. 【BZOJ-3578】GTY的人类基因组计划2 set + map + Hash 乱搞

    3578: GTY的人类基因组计划2 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 367  Solved: 159[Submit][Status][ ...

  5. UESTC 1272 Final Pan's prime numbers(乱搞)

    题目链接 Description Final Pan likes prime numbers very much. One day, he want to find the super prime n ...

  6. [bzoj1067][SCOI2007]降雨量——线段树+乱搞

    题目大意 传送门 题解 我国古代有一句俗话. 骗分出奇迹,乱搞最神奇! 这句话在这道题上得到了鲜明的体现. 我的方法就是魔改版线段树,乱搞搞一下,首先借鉴了黄学长的建树方法,直接用一个节点维护年份的区 ...

  7. 帮助Bsny(乱搞做法)

    帮助Bsny 题目描述 Bsny的书架乱成一团了,帮他一下吧! 他的书架上一共有n本书,我们定义混乱值是连续相同高度书本的段数.例如,如果书的高度是30,30,31,31,32,那么混乱值为3:30, ...

  8. hash进阶:使用字符串hash乱搞的姿势

    前言 此文主要介绍hash的各种乱搞方法,hash入门请参照我之前这篇文章 不好意思hash真的可以为所欲为 在开头先放一下题表(其实就是我题解中的hash题目qwq) 查询子串hash值 必备的入门 ...

  9. 【uoj#209】[UER #6]票数统计 组合数+乱搞

    题目描述 一个长度为 $n$ 的序列,每个位置为 $0$ 或 $1$ 两种.现在给出 $m$ 个限制条件,第 $i$ 个限制条件给出 $x_i$ .$y_i$ ,要求至少满足以下两个条件之一: 序列的 ...

随机推荐

  1. CNN那么多的网络有什么区别吗?如何对CNN网络进行修改?

    https://www.zhihu.com/question/53727257/answer/136261195 http://blog.csdn.net/csmqq/article/details/ ...

  2. spring 源码导入eclipse(sts)

    一. 准备工作 1.下载安装sts(springsource推荐使用) 下载地址: http://www.springsource.org/downloads/sts-ggts 2.下载安装gradl ...

  3. Hive批量删除历史分区

    批量删除历史分区和数据可以采用如下操作: -- 删除20180101之前的所有分区 alter table example_table_name drop if exists partition (d ...

  4. golang学习笔记6 beego项目路由设置

    golang学习笔记5 beego项目路由设置 前面我们已经创建了 beego 项目,而且我们也看到它已经运行起来了,那么是如何运行起来的呢?让我们从入口文件先分析起来吧: package main ...

  5. Different between MB SD Connect Compact 5 and MB SD C4 Star Diagnostic Tool

    MB SD C4 Star Diagnostic Tool is the professional MB Star Diagnostic Tools for benz cars and trucks. ...

  6. Hadoop学习笔记之六:HDFS功能逻辑(2)

    Lease(租约) HDFS(及大多数分布式文件系统)不支持文件并发写,Lease是HDFS用于保证唯一写的手段. Lease可以看做是一把带时间限制的写锁,仅持有写锁的客户端可以写文件. 租约的有效 ...

  7. Hadoop学习笔记之五:HDFS功能逻辑(1)

    Block Report DataNode会周期性(默认1小时)将自身节点全部block信息发送给NameNode,以让NameNode正确确维护block信息. 在Block Report的数据源D ...

  8. ubuntu重启+sublime快捷键

    sudo reboot Sublime常用快捷键: 掌握基本的代码编辑器的快捷键,能让你打码更有效率,刚开始可能不大记得住,多敲几次就能熟悉并使用它 精华键 : Ctrl+Shift+P:打开命令面板 ...

  9. Spring MVC前传递和后端接收的参数名不一致处理方式

    前端传递的变量和后端接收的变量名字不一致时,用注解@RequestParam来实现数据的传递 例如:@RequestParam(value="id") //实现商品的分类目录展现 ...

  10. Oracle通过dblink连接MySQL

    需要把MySQL的一些数据同步到Oracle,用ETL工具太麻烦了,通过参考官方文档实现了oracle to mysql dblink.每次修改配置后,需要重启监听才能生效,或者 reload一下,确 ...