我正在编写一个程序,用户输入两个值:两个时钟每小时快速的分钟数。当两个时钟同时显示时,输出应该是时钟上显示的时间。每小时只检查一次时钟(根据准确的时钟)。
目前,我有:
clock1 = 0
clock2 = 0
inp = input(">").split(" ")
offset1 = int(inp[0])+60
offset2 = int(inp[1])+60
def add():
global clock1
global clock2
clock1 += offset1
if clock1 > 1399:
clock1 -= 1440
clock2 += offset2
if clock2 > 1399:
clock2 -= 1440
add()
while clock1 != clock2:
add()
hours = 0
while clock1 > 59:
hours += 1
clock1 -= 60
while hours > 23:
hours -= 24
hours = str(hours)
minutes = str(clock1)
if len(hours) == 1:
hours = "0" + hours
if len(minutes) == 1:
minutes = "0" + minutes
print(hours + ":" + minutes)
这样可行,但是当输入值变大时,则需要很长时间。如何提高此解决方案的效率?