letters = {("x.","xx"):"A",("xx","xx"):"B",("x.x","xxx"):"C",("xx",".x"):"D",("xxx",".xx"):"E"}
fin = open("DATA4.txt","r")
fout = open("OUT4.txt","w")
def parse(top,bottom,buff=""):
if top=="":
return buff
if len(top)==1:
return -1
if (top[0:2],bottom[0:2]) in letters:
ret = parse(top[2:],bottom[2:],buff+letters[(top[0:2],bottom[0:2])])
if ret != -1:
return ret
if (top[0:3],bottom[0:3]) in letters:
ret = parse(top[3:],bottom[3:],buff+letters[(top[0:3],bottom[0:3])])
if ret != -1:
return ret
return -1
for i in range(5):
top = fin.readline().strip("\n ")
bottom = fin.readline().strip("\n ")
if i != 4:
fout.write(str(parse(top,bottom))+"\n") #to keep the program working even if an invalid string is passed
else:
fout.write(parse(top,bottom))
fin.close()
fout.close()
|