1. 程式人生 > >657. 判斷路線成圈

657. 判斷路線成圈

初始位置 (0, 0) 處有一個機器人。給出它的一系列動作,判斷這個機器人的移動路線是否形成一個圓圈,換言之就是判斷它是否會移回到原來的位置

移動順序由一個字串表示。每一個動作都是由一個字元來表示的。機器人有效的動作有 R(右),L(左),U(上)和 D(下)。輸出應為 true 或 false,表示機器人移動路線是否成圈。

示例 1:

輸入: "UD"
輸出: true

示例 2:

輸入: "LL"
輸出: false

思路:

設定兩個值 numUD 和 numRL , 分別代表垂直上下 和 水平左右的當前位置。若果出現 'U' ,則 numUD ++ , 出現 ’D' 則 numUD--。numRL類似。

/**
 * @param {string} moves
 * @return {boolean}
 */
var judgeCircle = function(moves) {
  var numUD = 0, numRL = 0;
  for (var move of moves) {
    switch(move) {
      case 'U':
        numUD ++;
        break;
      case 'D':
        numUD --;
        break;
      case 'R':
        numRL ++;
        break;
      case 'L':
        numRL --;
        break;
    }
  }
  if (numUD === 0 && numRL === 0) {
    return true;
  } else {
    return false;
  }
};