1 Star 0 Fork 0

ZENGWatermelon/LeetCode

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
874.模拟行走机器人.py 1.22 KB
一键复制 编辑 原始数据 按行查看 历史
sunzhaoc 提交于 2020-11-24 11:23 . master
'''
Description:
Version: 1.0
Autuor: Vicro
Date: 2020-11-13 17:25:01
LastEditTime: 2020-11-19 14:07:45
FilePath: \Leetcode\Chinese\874.模拟行走机器人.py
'''
#
# @lc app=leetcode.cn id=874 lang=python3
#
# [874] 模拟行走机器人
#
# @lc code=start
class Solution:
def robotSim(self, commands, obstacles):
direction = {'up': [0, 1, 'left', 'right'],
'down': [0, -1, 'right', 'left'],
'left': [-1, 0, 'down', 'up'],
'right': [1, 0, 'up', 'down']}
x = y = 0
dir = 'up'
res = 0
obstacles = set(map(tuple, obstacles))
for command in commands:
if command > 0:
for step in range(command):
if (x + direction[dir][0], y + direction[dir][1]) not in obstacles:
x += direction[dir][0]
y += direction[dir][1]
res = max(res, x**2 + y**2)
else:
if command == -1:
dir = direction[dir][3]
else:
dir = direction[dir][2]
return res
sol = Solution()
A = sol.robotSim([4,-1,4,-2,4], [[2,4], [3,4]])
print(A)
# @lc code=end
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/watermelonTT/LeetCode.git
git@gitee.com:watermelonTT/LeetCode.git
watermelonTT
LeetCode
LeetCode
master

搜索帮助

0d507c66 1850385 C8b1a773 1850385