1037. 在霍格沃茨找零钱(20)--Python

这个题目很简单,注意的就是钱不够支付时的情况

#全部使用Knut表示
def get_Knut(gall, sick, knut):
	sum = (gall * 17 + sick) * 29 + knut
	return sum

#将得到的结果换成标准形式	
def get_out(sum):
	sum = abs(sum)
	gall = sum // (17 * 29)
	remainder = sum % (17 * 29)
	sick = remainder // 29
	knut = remainder % 29
	return gall, sick, knut
	
shoule_pay, actual_pay = input().split()
gall_1, sick_1, knut_1 = actual_pay.split('.')
gall_2, sick_2, knut_2 = shoule_pay.split('.')

gall_1, sick_1, knut_1 = int(gall_1), int(sick_1), int(knut_1)
gall_2, sick_2, knut_2 = int(gall_2), int(sick_2), int(knut_2)

sum_1 = get_Knut(gall_1, sick_1, knut_1)
sum_2 = get_Knut(gall_2, sick_2, knut_2)

sum = sum_1 - sum_2

gall, sick, knut = get_out(sum)
if sum >= 0 :	
	print(str(gall) + '.' + str(sick) + '.' + str(knut))
else:
	print('-' + str(gall) + '.' + str(sick) + '.' + str(knut))


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值