leetcode657——Judge Route Circle

xiaoxiao2021-02-28  53

题目大意:问一个机器人按照所指示的方向(一个字符串)走完之后会不会回到原点。UDLR分别代表上下左右。

分析:字符串应用

代码:

class Solution {public: int dir[4][2] = { {-1,0},{1,0},{0,-1},{0,1} }; bool judgeCircle(string moves) { int x = 0, y = 0; for(int i = 0;i < moves.size();i++) { int choice; if (moves[i] == 'U') choice = 0; else if (moves[i] == 'D') choice = 1; else if (moves[i] == 'L') choice = 2; else choice = 3; x = x + dir[choice][0]; y = y + dir[choice][1]; } if (x == 0 && y == 0) return true; else return false; }

};

后来想出了一种更简便的思路:

class Solution {public: bool judgeCircle(string moves) { int x = 0, y = 0; for (int i = 0;i < moves.size();i++) { if (moves[i] == 'U') x--; else if (moves[i] == 'D') x++; else if (moves[i] == 'L') y--; else y++; } if (x == 0 && y == 0) return true; else return false; }};

转载请注明原文地址: https://www.6miu.com/read-2629231.html

最新回复(0)