Skip to content

Latest commit

 

History

History
40 lines (34 loc) · 967 Bytes

File metadata and controls

40 lines (34 loc) · 967 Bytes

657. Judge Route Circle

Description

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

/**
 * @param {string} moves
 * @return {boolean}
 */
var judgeCircle = function(moves) {
    "use strict";
    let x = y = 0;
    for (let i = 0; i < moves.length; i++) {
		switch(moves[i]) {
			case 'R': x++; break;
			case 'L': x--; break;
			case 'U': y++; break;
			case 'D': y--; break;
		}
	}
	return x === 0 && y === 0;
};