@ninijia 在 Leetcode每日一题练习 ------ 874. 模拟行走机器人 中发帖
从Leetcode 每日一题练习继续讨论:
874. 模拟行走机器人
874. Walking Robot Simulation
题解
本题按照题目中的要求遍历数组并对机器人的行动进行模拟, 每当一次行动结束后计算其到原点的欧氏距离, 并更新最大值.在执行行动过程中如何判断是否碰到障碍物, 对于一个前进k步的行动, 每次前进1步都判断一下当前坐标是否碰到障碍物. 在go中可以使用map作为哈希表, 将障碍物的坐标, 一个固定的长度为2的数组作为键, 布尔值作为值存储. 则在前进过程中同样将当前位置的坐标作为键, 判断是否为障碍物. 如果是障碍物, 直接停止前进.
代码
func robotSim(commands []int, obstacles [][]int) int {
dx := []int{0, 1, 0, -1} // 北、东、南、西
dy := []...