[JAVA 문제 풀이] 25. 모스부호(1) (120838)

Stupefyee's avatar
Nov 21, 2024
[JAVA 문제 풀이] 25. 모스부호(1) (120838)
notion image
notion image

내가 작성한 코드

💡
import java.util.HashMap; import java.util.Map; class Solution { public String solution(String letter) { String[] mos = letter.split(" "); // 받은 문자열 배열화 // 맵에 모스부호 전부 담기 Map<String, String> morse = new HashMap<>(); morse.put(".-", "a"); morse.put("-...", "b"); morse.put("-.-.", "c"); morse.put("-..", "d"); morse.put(".", "e"); morse.put("..-.", "f"); morse.put("--.", "g"); morse.put("....", "h"); morse.put("..", "i"); morse.put(".---", "j"); morse.put("-.-", "k"); morse.put(".-..", "l"); morse.put("--", "m"); morse.put("-.", "n"); morse.put("---", "o"); morse.put(".--.", "p"); morse.put("--.-", "q"); morse.put(".-.", "r"); morse.put("...", "s"); morse.put("-", "t"); morse.put("..-", "u"); morse.put("...-", "v"); morse.put(".--", "w"); morse.put("-..-", "x"); morse.put("-.--", "y"); morse.put("--..", "z"); // 모스부로 알파벳으로 변환 for (int i = 0; i < mos.length; i++) { mos[i] = morse.get(mos[i]); } // 배열을 문자열로 바꾸기 String answer = String.join("", mos); return answer; } }

다른 사람의 코드

💡
class Solution { public String solution(String letter) { String answer = ""; String[] morse = {".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-","...-",".--","-..-","-.--","--.."}; String[] word = letter.split(" "); for(int i=0;i<word.length;i++){ for(int j=0;j<morse.length;j++){ if(word[i].equals(morse[j])) answer+=(char)(j+97); } } return answer; } }
맵 대신 문자열 배열을 이용해 이중 for문을 사용.
Share article

stupefyee