본문 바로가기
algorithm

[프로그래머스]모스부호 (1) - java, python

by skysline 2023. 3. 10.
반응형

`모스부호(1)`

 

문제설명

 

입출력 예


입출력 예


java code

import java.util.*;
class Solution {
    public String solution(String letter) {
        String answer = "";
        Map<String, String> mose = new LinkedHashMap<>() {
            {
                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[] letterArr = letter.split(" ");
        for (String mo:letterArr) {
            answer += mose.get(mo);
        }
        return answer;
    }
}

python code

def solution(letter):
    morse_dict = {
        '.-': 'a', '-...': 'b', '-.-.': 'c', '-..': 'd', '.': 'e',
        '..-.': 'f', '--.': 'g', '....': 'h', '..': 'i', '.---': 'j',
        '-.-': 'k', '.-..': 'l', '--': 'm', '-.': 'n', '---': 'o',
        '.--.': 'p', '--.-': 'q', '.-.': 'r', '...': 's', '-': 't',
        '..-': 'u', '...-': 'v', '.--': 'w', '-..-': 'x', '-.--': 'y',
        '--..': 'z'
    }

    answer = ""
    morse_code_list = letter.split()
    for code in morse_code_list:
        if code in morse_dict:
            answer += morse_dict[code]
    return answer
반응형

댓글