大小為 n x n
的矩陣 grid
中有一條蛇。蛇可以朝 四個可能的方向 移動。矩陣中的每個單元格都使用位置進行標識: grid[i][j] = (i * n) + j
。
蛇從單元格 0 開始,並遵循一系列命令移動。
給你一個整數 n
表示 grid
的大小,另給你一個字串陣列 commands
,其中包括 "UP"
、"RIGHT"
、"DOWN"
和 "LEFT"
。題目測評資料保證蛇在整個移動過程中將始終位於 grid
邊界內。
返回執行 commands
後蛇所停留的最終單元格的位置。
class Solution:
def finalPositionOfSnake(self, n: int, commands: List[str]) -> int:
return sum([{"UP": -n, "RIGHT": 1, "DOWN": n, "LEFT": -1}[i] for i in commands])
class Solution: def finalPositionOfSnake(self, n: int, commands: List[str]) -> int: i = 0 j = 0 for c in commands: if c=="RIGHT": j+=1 elif c=="LEFT": j-=1 elif c=="UP": i-=1 elif c=="DOWN": i+=1 return n*i+j