首页 > 代码库 > 657. Judge Route Circle

657. Judge Route Circle

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

Solution 1: use x,y to record the coordinate.

 1 class Solution {
 2 public:
 3     bool judgeCircle(string moves) {
 4         int x=0,y=0;
 5         for (int i=0;i<moves.length();i++){
 6             switch(moves[i]){
 7                 case U:{++y;break;}                
 8                 case D:{--y;break;}
 9                 case R:{++x;break;}
10                 case L:{--x;break;}
11                 default:break;
12             }
13         }
14         return (x==0&&y==0);15     }
16 };

 

657. Judge Route Circle