leetcode.657.JudgeRouteCircle
Q:
# Initially, there is a Robot at position (0, 0). # Given a sequence of its moves, judge if this robot makes a circle, # which means it moves back to the original place. # The move sequence is represented by a string. And each move is represent by a character. # The valid robot moves are R (Right), L (Left), U (Up) and D (down). # The output should be true or false representing whether the robot makes a circle. # Example 1: # Input: "UD" # Output: true # Example 2: # Input: "LL" # Output: false
A:
class Solution(object):
def judgeCircle(self, moves):
"""
:type moves: str
:rtype: bool
"""
blnHorizon = moves.count("L")*1 + moves.count("R")*(-1)
blnVertical = moves.count("U")*1 + moves.count("D")*(-1)
if blnHorizon == 0 and blnVertical == 0:
return True
return False
def judgeCircleV2(self, moves):
"""
:type moves: str
:rtype: bool
"""
return moves.count("L") == moves.count("R") and moves.count("U") == moves.count("D")
if __name__ == '__main__':
solution = Solution()
testList = ["UD", "UDL", "UDLR", "UUULLRRRDDD"]
for moves in testList:
print solution.judgeCircle(moves)
浙公网安备 33010602011771号