"""
机器人从原点(0,0)开始在平面中移动。
机器人可以通过给定的步骤向上,向下,向左和向右移动。
机器人运动的痕迹如下所示:
UP 5
DOWN 3
LETF 3
RIGHT 2
方向之后的数字是步骤。
计算一系列运动和原点之后距当前位置的距离。
如果距离是浮点数,则只打印最接近的整数。
"""
import math
# 初始位置设置在原点
pos = [0, 0]
# 定义一系列移动指令
movements = [
'UP 5',
'DOWN 3',
'LEFT 3',
'RIGHT 2'
]
# 遍历每一个移动指令
for movement in movements:
# 分解移动指令为方向和步数
movement = movement.split(' ')
direction = movement[0]
steps = int(movement[1])
# 根据移动方向更新位置
if direction == 'UP':
pos[0] += steps
elif direction == 'DOWN':
pos[0] -= steps
elif direction == 'RIGHT':
pos[1] += steps
elif direction == 'LEFT':
pos[1] -= steps
else:
# 如果遇到未知方向,不做任何操作
pass
# 计算并输出最终位置到起点的距离
print(int(round(math.sqrt(pos[1] ** 2 + pos[0] ** 2))))
评论前必须登录!
注册