Programmers 방문 길이
Updated:
Answer
```java import java.util.*;
class Solution {
public int solution(String dirs) {
int answer = 0;
int x = 0;
int y = 0;
HashSet<String> set = new HashSet<>();
HashMap<Character, int[]> map = new HashMap<>();
map.put('U', new int[]{0, 1});
map.put('D', new int[]{0, -1});
map.put('R', new int[]{1, 0});
map.put('L', new int[]{-1, 0});
for(Character dir : dirs.toCharArray()){
int lastX = x, lastY = y;
x += map.get(dir)[0];
y += map.get(dir)[1];
if(x > 5 || x < - 5){
x -= map.get(dir)[0];
continue;
}
if(y > 5 || y < -5){
y -= map.get(dir)[1];
continue;
}
set.add(lastX + "" + lastY + "" + x + "" + y);
set.add(x + "" + y + "" + lastX + "" + lastY);
}
answer = set.size() / 2;
return answer;
} }