https://leetcode.com/problems/judge-route-circle/description/
题解:分解移动为水平移动和竖直移动,只要水平移动和竖直移动最后都没变,则最后的移动形成一个回路。用变量horizontal来记录竖直移动,vertical来记录水平移动。
class Solution {
public boolean judgeCircle(String moves) {
int horizontal = 0, vertical = 0, N = moves.length();
for(int i = 0; i < N; i++) {
switch (moves.charAt(i)) {
case 'U' : vertical++;break;
case 'D' : vertical--;break;
case 'L' : horizontal++;break;
case 'R' : horizontal--;break;
}
}
return horizontal==0&&vertical==0;
}
}