pos = {1 :(0,0), 2 : (0,1), 3 : (0,2), 4 : (1,0), 5 : (1,1), 6 : (1,2), 7 : (2,0), 8 : (2,1), 9 : (2,2), '*' :(3,0), 0 : (3,1), '#' : (3,2) }
def distance(a,b):
return abs(pos[a][0] - pos[b][0]) + abs(pos[a][1] - pos[b][1])
def solution(numbers, hand):
l = '*'
r = '#'
answer = ""
for i in numbers:
print(l,r,i)
if i in (1,4,7):
answer += "L"
l = i
elif i in (3,6,9):
answer +="R"
r = i
elif i in (2,5,8,0):
if distance(l,i) > distance(r,i):
answer +="R"
r = i
elif distance(l,i) < distance(r,i):
answer += "L"
l = i
elif distance(l,i) == distance(r,i) :
answer+= hand[0].upper()
if hand == "right":
r = i
else :
l = i
return answer
print(solution([7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2],"left"))
Comments