import java.util.*;
class Solution {
public int solution(String dirs) {
int x = 0; int y = 0;
Set<String> set = new HashSet<>();
for(int i=0; i<dirs.length(); i++) {
char c = dirs.charAt(i);
String start = String.valueOf(x)+String.valueOf(y);
String end = "";
if(c=='U' && y!=5) {
y++;
end = String.valueOf(x)+String.valueOf(y);
set.add(start+end); set.add(end+start);
} else if(c=='D' && y!=-5) {
y--;
end = String.valueOf(x)+String.valueOf(y);
set.add(start+end); set.add(end+start);
} else if(c=='L' && x!=-5) {
x--;
end = String.valueOf(x)+String.valueOf(y);
set.add(start+end); set.add(end+start);
} else if(c=='R' && x!=5) {
x++;
end = String.valueOf(x)+String.valueOf(y);
set.add(start+end); set.add(end+start);
}
}
return set.size()/2;
}
}
'Problem Solving > Programmers' 카테고리의 다른 글
[Level 2] [3차] 파일명 정렬 (0) | 2022.04.07 |
---|---|
[Level 2] 가장 큰 정사각형 찾기 (0) | 2022.04.07 |
[Level 2] 스킬트리 (0) | 2022.04.07 |
[Level 2] n^2 배열 자르기 (0) | 2022.04.07 |
[Level 2] 점프와 순간 이동 (0) | 2022.04.07 |