题目描述
【问题描述】
如果你是哈利·你会知道魔法世界有自己的货币系统 —— 就像海格告诉哈利的:十七银西可以(Sickle)兑一个加隆(Galleon),二十九纳特(Knut)很容易兑现西可。现在,给哈利的价格P和他实际付款A,你的任务是写一个程序来计算他应该找到的零钱。
输入形式
输入在1行中分别给P和A,格式为“Galleon.Sickle.Knut其间用一个空间隔开。Galleon是[0, 107]区间内的整数,Sickle是[0, 17)区间内的整数,Knut是[0, 29)区间内的整数。
输出形式
哈利应该在一行中以与输入相同的格式输出零钱。如果他没有带足够的钱,那么输出应该是负的。
样例输入1
10.16.27 14.1.28 【样例输出1】
3.2.1 样例输入2
14.1.28 10.16.27 样例输出1
-3.2.1
代码
#include <bits/stdc .h> using namespace std; int main(){
long long sum = 0, a1, b1, c1, a2, b2, c2; char n; cin >> a1 >> n >> b1 >> n >> c1 >> a2 >> n >> b2 >> n >> c2; a2 -= a1; b2 -= b1; c2 -= c1; sum = a2*29*17 b2*29 c2; if(sum < 0) cout << '-'; c2 = sum % 29; sum /= 29; b2 = sum % 17; a2 = sum / 17; cout << abs(a2) << '.' << abs(b2) << '.' << abs(c2); return 0; }
如果对各位看官有帮助不妨留下一个点赞 ̄ω ̄=。