创建一个名为repeated_position(current_position, moves)
的函数,该函数针对给定位置(current_position)和动作列表(moves),返回典当在第二次找到自身的位置中的第一个位置(如果存在该位置) ),如果典当行占据的所有位置都不相同,则返回-1。
我已经创建了一个函数来检测其下一个位置:
def next_position(current_position, move):
x, y = current_position
if move == 'left':
new_position = (x - 1, y)
elif move == 'right':
new_position = (x + 1, y)
elif move == 'up':
new_position = (x, y + 1)
else:
new_position = (x, y - 1)
return new_position
但是我不确定如何在此处编写if条件。我所拥有的:
def repeated_position(current_position, moves):
x, y = current_position
location = set()
for move in moves:
if next_position(current_position, move) not in location:
location.add(next_position(current_position, move))
elif next_position(current_position, move) in location:
return next_position(current_position, move)
elif len(location)==len(moves):
return -1