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 };

 

posted @ 2017-08-14 19:49  anghostcici  阅读(79)  评论(0编辑  收藏  举报