๐ง์๊ณ ๋ฆฌ์ฆ?์๊ณ ์ถ์!
ํ๋ก๊ทธ๋๋จธ์ค - ๋ชจ์ค๋ถํธ(1)
eazyseon
2023. 2. 15. 14:32
๋ฐ์ํ
-๋ฌธ์ ์ค๋ช
-์ ์ถ๋ ฅ ์
- ๋์ ํ์ด
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 = '';
const splitLetter = letter.split(' ')
for(let i=0; i<splitLetter.length; i++){
answer+=morse[splitLetter[i]]
}
return answer;
}
solution(".... . .-.. .-.. ---") //'hello' ์ถ๋ ฅ
๋จผ์ , split()๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ง์ ๋ ๊ตฌ๋ถ์๋ก ๋๋์ด์ง ๋ฐฐ์ด์ splitLetter๋ผ๋ ๋ณ์์ ํ ๋นํด ์ค๋ค.
๋ฌธ์ ์์ ์ฃผ์ด์ง ๋ฌธ์์ด์ ๊ณต๋ฐฑ์ผ๋ก ๋๋์ด์ ธ ์๋ค๊ณ ํ์ผ๋ฏ๋ก ''์ ๋์ด์ฐ๊ธฐ๋ก ๊ตฌ๋ถ์๋ฅผ ๋ฃ์ด์ค๋ค.
๊ทธ๋ฌ๋ฉด ์๋์ ๊ฐ์ ๋ฐฐ์ด์ ํํ๋ก ๋ฐ๋๋ค.
splitLetter = [ '....', '.', '.-..', '.-..', '---' ]
์ด์ splitLetter ๋ฐฐ์ด์ for๋ฌธ์ ๋๋ฉฐ morse ๊ฐ์ฒด์ ํค์ ๋ง๋ ๊ฐ์ ์ฐพ์ ์นํ๋ ์ํ๋ฒณ์ answer์ ๋ฃ์ด ๋ฆฌํดํ๋ฉด ๋๋ค.
- ๋ค๋ฅธ ์ฌ๋์ ํ์ด
function solution(letter) {
return letter.split(' ').reduce((prev, curr) => prev + morse[curr], '')
}
- ๋ฐฐ์ด์
1. reduce (๋ด๊ฐ ์ ๋ฆฌํ reduce ๐ https://eazyseon.tistory.com/6 )
๋ฐ์ํ