코딩 테스트 풀이 🛠

[프로그래머스] 모스부호 (1)

엄성준 2023. 1. 15. 22:20

문제 설명

머쓱이는 친구에게 모스부호를 이용한 편지를 받았습니다. 그냥은 읽을 수 없어 이를 해독하는 프로그램을 만들려고 합니다. 문자열 letter가 매개변수로 주어질 때, letter를 영어 소문자로 바꾼 문자열을 return 하도록 solution 함수를 완성해보세요.
모스부호는 다음과 같습니다.

morse = { 
    '.-':'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'
}

 

입출력 예

 

letter result
".... . .-.. .-.. ---" "hello"
".--. -.-- - .... --- -." "python"

 

나의 풀이

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
function solution(letter) {
    const morse = { 
    '.-':'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'
}
    let answer = '';
    letter.split(' ').forEach(item=>{
        answer += morse[item]
    })
    return answer;
}
cs

 

문제를 풀며 느낀 점

 

- object [key] 값을 이용해서 문자열을 붙인 값을 return 했습니다.