题目
思路
将所有应付款项和实付款项统一转换为Knut,再进行加减运算,最后将所得结果转换为Galleon Sickle Knut的形式
代码
sale,pay=input().split(' ')
sale_Galleon,sale_Sickle,sale_Knut=list(map(int,sale.split('.')))
pay_Galleon,pay_Sickle,pay_Knut=list(map(int,pay.split('.')))
sale_all_knut=(sale_Galleon*17+sale_Sickle)*29+sale_Knut
pay_all_knut=(pay_Galleon*17+pay_Sickle)*29+pay_Knut
charge_all_knut=pay_all_knut-sale_all_knut
charge_Galleon=int(charge_all_knut/(17*29))
charge_Sickle=int((charge_all_knut-charge_Galleon*(17*29))/29)
charge_knut=charge_all_knut-charge_Galleon*(17*29)-charge_Sickle*29
if(charge_all_knut<0):
print(str(charge_Galleon)+'.'+str(-charge_Sickle)+'.'+str(-charge_knut))
else:
print(str(charge_Galleon)+'.'+str(charge_Sickle)+'.'+str(charge_knut))