import sys
# for line in sys.stdin:
# a = line.split()
# print(int(a[0]) + int(a[1]))
"""
解题思路:
时间格式: X1X2 :X3X4
X1 的范围为 0<=X1<=2
0<=X2<=3
0<=X3<=5
0<=X4<=9
定义一个方法求t1,t2 的最大值最小值
t1 最大值为mx1 最小值为mi1
t2 最大值为mx2 最小值为mi2
t2 >t1
相距自最小 mi2-mx1 相距最大 mx2-mi1
测试用例1:
00:00
00:0?
预期结果: 1 9
测试用例2:
??:??
??:??
预期结果:
1 1439
解题思路参考: https://blog.nowcoder.net/n/545a3e14eb76419abbad4893be541dab
"""
def fun(s:str):
# 求最大值最小值
mx=""
mi=""
for i in range(len(s)):
if s[i]=='?':
if i==0:
mx+="2"
mi+="0"
elif i==1:
mx+="3"
mi+="0"
elif i==2:
mx+="5"
mi+="0"
elif i==4:
mx+="9"
mi+="0"
else:
mx+=s[i]
mi+=s[i]
#转为分钟
mxs=mx.split(":")
mis=mi.split(":")
print(mxs,mis)
mx_int=int(mxs[0])*60+int(mxs[1])
mi_int=int(mis[0])*60+int(mis[1])
return mx_int,mi_int
def sovler():
s1=input()
s2=input()
mx1,mi1=fun(s1)
mx2,mi2=fun(s2)
if mx1==mi2:
mi2+=1
ret_mi =mi2-mx1
ret_mx =mx2-mi1
print(str(ret_mi)+" "+str(ret_mx))
#sovler()
def sovler2():
s1=input()
s2=input()
#创建两个空列表存储可能时间
list1=[]
list2=[]
for i in range(0,60*24):
# 小时
hour=i//60
# 分钟
minute=i%60
if s1[0]=='?' or int(s1[0])==hour//10:
if s1[1]=='?' or int(s1[1])==hour%10:# 注意s1[2]==':'
if s1[3]=='?' or int(s1[3])==minute//10:
if s1[4]=='?' or int(s1[4])==minute%10:
list1.append(i)
if s2[0]=='?' or int(s2[0])==hour//10:
if s2[1]=='?' or int(s2[1])==hour%10: # 注意s2[2]==':'
if s2[3]=='?' or int(s2[3])==minute//10:
if s2[4]=='?' or int(s2[4])==minute%10:
list2.append(i)
# 计算最值
#初始化
mi=24*60
mx=0
for i in range(len(list1)):
for j in range(len(list2)):
if list1[i]<list2[j]:
mi=min(mi,list2[j]-list1[i])
mx =max(mx ,list2[j]-list1[i])
print(mi,mx)
sovler2()