
문제해결 : 그냥 노가다 아닌가? HashMap으로 Key, Value로 처리 후 반복문을 통해 변환
Code
public class Main {
public static void main(String[] args) throws IOException {
Map<String, String> morseCodeMap = new HashMap<>();
morseCodeMap.put(".-", "A");
morseCodeMap.put("-...", "B");
morseCodeMap.put("-.-.", "C");
morseCodeMap.put("-..", "D");
morseCodeMap.put(".", "E");
morseCodeMap.put("..-.", "F");
morseCodeMap.put("--.", "G");
morseCodeMap.put("....", "H");
morseCodeMap.put("..", "I");
morseCodeMap.put(".---", "J");
morseCodeMap.put("-.-", "K");
morseCodeMap.put(".-..", "L");
morseCodeMap.put("--", "M");
morseCodeMap.put("-.", "N");
morseCodeMap.put("---", "O");
morseCodeMap.put(".--.", "P");
morseCodeMap.put("--.-", "Q");
morseCodeMap.put(".-.", "R");
morseCodeMap.put("...", "S");
morseCodeMap.put("-", "T");
morseCodeMap.put("..-", "U");
morseCodeMap.put("...-", "V");
morseCodeMap.put(".--", "W");
morseCodeMap.put("-..-", "X");
morseCodeMap.put("-.--", "Y");
morseCodeMap.put("--..", "Z");
morseCodeMap.put(".----", "1");
morseCodeMap.put("..---", "2");
morseCodeMap.put("...--", "3");
morseCodeMap.put("....-", "4");
morseCodeMap.put(".....", "5");
morseCodeMap.put("-....", "6");
morseCodeMap.put("--...", "7");
morseCodeMap.put("---..", "8");
morseCodeMap.put("----.", "9");
morseCodeMap.put("-----", "0");
morseCodeMap.put("--..--", ",");
morseCodeMap.put(".-.-.-", ".");
morseCodeMap.put("..--..", "?");
morseCodeMap.put("---...", ":");
morseCodeMap.put("-....-", "-");
morseCodeMap.put(".--.-.", "@");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
StringTokenizer st = new StringTokenizer(br.readLine());
for(int i =0; i<N; i++){
System.out.print(morseCodeMap.get(st.nextToken()));
}
}
}