finish 657

This commit is contained in:
sangge 2024-03-12 15:47:15 +08:00
parent 449729bf9d
commit efde31ecc7

45
leetcode/657.py Normal file
View File

@ -0,0 +1,45 @@
# There is a robot starting at the position (0, 0), the origin,
# on a 2D plane. Given a sequence of its moves,
# judge if this robot ends up at (0, 0) after it completes its moves.
# You are given a string moves that represents
# the move sequence of the robot where moves[i]
# represents its ith move. Valid moves are 'R' (right),
# 'L' (left), 'U' (up), and 'D' (down).
# Return true if the robot returns to the origin after it finishes all of its moves,
# or false otherwise.
# Note: The way that the robot is "facing" is irrelevant.
# 'R' will always make the robot move to the right once,
# 'L' will always make it move left, etc. Also,
# assume that the magnitude of the robot's movement is the same for each move.
# Constraints:
# 1 <= moves.length <= 2 * 10^4
# moves only contains the characters 'U', 'D', 'L' and 'R'.
class Solution:
def judgeCircle1(self, moves: str) -> bool:
horizontal = 0
vertical = 0
for move in moves:
if move == "U":
vertical += 1
if move == "D":
vertical -= 1
if move == "L":
horizontal -= 1
if move == "R":
horizontal += 1
return horizontal == 0 and vertical == 0
def judgeCircle(self, moves: str) -> bool:
if moves.count("U")!=moves.count("D"):
return False
if moves.count("L")!=moves.count("R"):
return False
return True