728x90
반응형
[프로그래머스] 코딩테스트 연습 -> 코딩테스트 입문 -> 모스부호 (1)
https://school.programmers.co.kr/learn/courses/30/lessons/120838
해결 과정
이 문제는 HashMap을 이용하여 해결하였다.
먼저 morseMap이라는 HashMap을 만들어주고, 모스부호와 해당 알파벳을 put해준다.
다음 String배열 morse를 만들고 letter을 공백을 기준으로 나누어 배열에 넣어준다.
배열의 모든 원소를 반복하면서 HashMap에서 해당 모스부호에 해당하는 알파벳을 가져와서 문자열 answer에 추가해준다.
answer을 return 해주면 된다.
소스 코드
import java.util.HashMap;
import java.util.Map;
class Solution {
public String solution(String letter) {
Map<String, String> morseMap = new HashMap<>() {
{ put(".-", "a");
put("-...", "b");
put("-.-.", "c");
put("-..", "d");
put(".", "e");
put("..-.", "f");
put("--.", "g");
put("....", "h");
put("..", "i");
put(".---", "j");
put("-.-", "k");
put(".-..", "l");
put("--", "m");
put("-.", "n");
put("---", "o");
put(".--.", "p");
put("--.-", "q");
put(".-.", "r");
put("...", "s");
put("-", "t");
put("..-", "u");
put("...-", "v");
put(".--", "w");
put("-..-", "x");
put("-.--", "y");
put("--..", "z");
}
};
String answer = "";
String[] morse = letter.split(" ");
for (String m : morse) {
answer += morseMap.get(m);
}
return answer;
}
}
728x90
반응형
'JAVA > Programmers' 카테고리의 다른 글
JAVA 프로그래머스 [구슬을 나누는 경우의 수] 자바 Lv.0 (0) | 2023.05.30 |
---|---|
JAVA 프로그래머스 [개미 군단] 자바 Lv.0 (0) | 2023.05.30 |
JAVA 프로그래머스 [순서쌍의 개수] Lv.0 (0) | 2023.05.29 |
JAVA 프로그래머스 [배열 자르기] 자바 Lv.0 (0) | 2023.05.29 |
JAVA 프로그래머스 [외계행성의 나이] 자바 Lv.0 (0) | 2023.05.29 |
댓글