AC代码

#include <cstdio>
#include <algorithm> using namespace std; char flag = 0; //判断付钱数是否大于价格
struct Money {
int Galleon, Sickle, Knut;
} price, pay, temp, sub; void init() {
price.Galleon = pay.Galleon = temp.Galleon = 0;
price.Sickle = pay.Sickle = temp.Sickle = 0;
price.Knut = pay.Knut = temp.Knut = 0;
}
void Sub(Money a, Money b) { //a为付钱, b为价格
if(a.Knut >= b.Knut) {
temp.Knut = a.Knut - b.Knut;
} else if(a.Knut < b.Knut) {
a.Sickle -= 1;
temp.Knut = a.Knut + 29 - b.Knut;
}
//printf("a.Sickle = %d c.Knut = %d\n", a.Sickle, c.Knut);
//printf("before_____a.Galleon = %d\n", a.Galleon);
if(a.Sickle >= b.Sickle) {
temp.Sickle = a.Sickle - b.Sickle;
} else if(a.Sickle < b.Sickle) {
a.Galleon -= 1;
temp.Sickle = a.Sickle + 17 - b.Sickle;
}
//printf("after_____a.Galleon = %d\n", a.Galleon);
temp.Galleon = a.Galleon - b.Galleon;
} int main() {
#ifdef ONLINE_JUDGE
#else
freopen("1.txt", "r", stdin);
#endif // ONLINE_JUDGE
init();
scanf("%d.%d.%d %d.%d.%d", &price.Galleon, &price.Sickle, &price.Knut, &pay.Galleon, &pay.Sickle, &pay.Knut);
// printf("price:%d.%d.%d pay:%d.%d.%d\n", price.Galleon, price.Sickle, price.Knut, pay.Galleon, pay.Sickle, pay.Knut);
if(pay.Galleon < price.Galleon) {
swap(price, pay);
flag = 1;
}
// printf("flag:%c\n", flag);
// printf("price:%d.%d.%d pay:%d.%d.%d\n", price.Galleon, price.Sickle, price.Knut, pay.Galleon, pay.Sickle, pay.Knut);
Sub(pay, price);
if(flag == 1) printf("-");
printf("%d.%d.%d", temp.Galleon, temp.Sickle, temp.Knut);
return 0;
}

PAT B1037 在霍格沃兹找零钱的更多相关文章

  1. PAT (Basic Level) Practise (中文)-1037. 在霍格沃茨找零钱(20)

    PAT (Basic Level) Practise (中文)-1037. 在霍格沃茨找零钱(20) http://www.patest.cn/contests/pat-b-practise/1037 ...

  2. PAT 1037 在霍格沃茨找零钱(20)(代码+思路)

    1037 在霍格沃茨找零钱(20)(20 分) 如果你是哈利·波特迷,你会知道魔法世界有它自己的货币系统 -- 就如海格告诉哈利的:"十七个银西可(Sickle)兑一个加隆(Galleon) ...

  3. PAT 乙级 1037 在霍格沃茨找零钱(20)C++版

    1037. 在霍格沃茨找零钱(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 如果你是哈利·波特迷,你会知 ...

  4. 【算法笔记】B1037 在霍格沃茨找零钱

    1037 在霍格沃茨找零钱 (20 分) 如果你是哈利·波特迷,你会知道魔法世界有它自己的货币系统 —— 就如海格告诉哈利的:“十七个银西可(Sickle)兑一个加隆(Galleon),二十九个纳特( ...

  5. PAT——乙级1022:D进制的A+B &乙级1037:在霍格沃茨找零钱

    1022 D进制的A+B (20 point(s)) 输入两个非负 10 进制整数 A 和 B (≤2​30​​−1),输出 A+B 的 D (1<D≤10)进制数. 输入格式: 输入在一行中依 ...

  6. PAT(B) 1037 在霍格沃茨找零钱(Java)

    题目链接:1037 在霍格沃茨找零钱 (20 point(s)) 题目描述 如果你是哈利·波特迷,你会知道魔法世界有它自己的货币系统 -- 就如海格告诉哈利的:"十七个银西可(Sickle) ...

  7. P1037 在霍格沃茨找零钱

    转跳点:

  8. PAT-乙级-1037. 在霍格沃茨找零钱(20)

    1037. 在霍格沃茨找零钱(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 如果你是哈利·波特迷,你会知 ...

  9. 贪心算法-找零钱(C#实现)

    找零钱这个问题很清楚,无非就是始终拿可以取的最大面值来找,最后就使得张数最小了,这个实现是在假设各种面值足够多的情况下. 首先拖出一个界面来,最下面是一个listbox控件 对应的代码:问题比较简单, ...

随机推荐

  1. Leading and Trailing(LightOJ - 1282)

    题解:求一个数的次幂,然后输出前三位和后三位,后三位注意有前导0的情况. 后三位直接用快速幂取模求解. 前三位求得时候只需要稍微变形一下,可以把乘过的结果拆成用科学计数法,那么小数部分只有由前面决定, ...

  2. codeforces gym #101161G - Binary Strings(矩阵快速幂,前缀斐波那契)

    题目链接: http://codeforces.com/gym/101161/attachments 题意: $T$组数据 每组数据包含$L,R,K$ 计算$\sum_{k|n}^{}F(n)$ 定义 ...

  3. Codeforces 645E. Intellectual Inquiry(DP,贪心)

    Codeforces 645E. Intellectual Inquiry 题意:给定一串字符,由前k个小写拉丁字母组成,要求在该字符串后面补上n个字符(也从前k个小写拉丁字母里面选),使得最后得到的 ...

  4. Zookeeper系列(十三)Zookeeper的请求处理

    作者:leesf    掌控之中,才会成功:掌控之外,注定失败. 出处:http://www.cnblogs.com/leesf456/p/6179118.html尊重原创,奇文共欣赏: 一.前言 在 ...

  5. python 二叉搜索树相关代码

    class TreeNode: def __init__(self, val): self.val = val self.left = None self.right = None class Ope ...

  6. php中pack、unpack的详细用法

    详见: https://segmentfault.com/a/1190000008305573?utm_source=tag-newest

  7. 脚本:将git项目下载到本地并启动

    大致思路:从git上clone源代码到本地:使用mvn package将源代码达成war/jar包:将打好的包放到tomcatpath/webapps/下:到tomcatpath/bin/下执行res ...

  8. Windows Server 2012R2 部署 Domain Controller

    1. Create a machine as Domain Controller; 2. Change DNS server address as 127.0.0.1; 3. Change Compu ...

  9. Python可变参数函数用法详解

    来自:http://c.biancheng.net/view/2257.html 很多编程语言都允许定义个数可变的参数,这样可以在调用函数时传入任意多个参数.Python 当然也不例外,Python ...

  10. springboot 底层 JackSon 的使用

    Jackson常用的注解使用和使用场景: 接下来我们在看一段代码,这段代码是常用注解在实体类User中的简单使用:package zone.reborn.springbootstudy.entity; ...