[2021夏季学期编程训练题四]解题思路及参考代码
更新日志
[2021年9月5日] 更新了难度1和2的题解。
[2021年9月14日] 更新了难度3和4的题解,动态规划的题目借用CSDN上的一个优秀博主(Karltan)的代码,学习了。
前言
文章内容为作者个人学习心得,解题思路及参考代码不一定是最优的,如发现有不正确的地方或更优的解法,欢迎批评指正或讨论交流,联系方式可以在页面下方找到。
1.在霍格沃茨找零钱
temp = input().split()
v1, v2 = temp[0].split("."), temp[1].split(".")
for i in range(3):
v1[i] = int(v1[i])
v2[i] = int(v2[i])
s1 = (v1[0] * 17 + v1[1]) * 29 + v1[2]
s2 = (v2[0] * 17 + v2[1]) * 29 + v2[2]
c = s2 - s1
ac = abs(c)
g = ac // (17 * 29)
s = (ac - g * 17 * 29) // 29
k = ac - g * 17 * 29 - s * 29
if c < 0:
print("-{}.{}.{}".format(g, s, k))
else:
print("{}.{}.{}".format(g, s, k))