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

2024. 6. 18. 18:37·Algorithm/Javascript

 

https://school.programmers.co.kr/learn/courses/30/lessons/120838

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 


[ 문제 ]

 

[ 내 풀이 ]

function solution(letter) {

    // 문자열을 넣을 변수 생성
    let answer = ''

    // 참고할 모스부호 선언 ( 주어진 정보 )
    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 letters = letter.split(' ')
    
    // 배열을 순회하며 모스부호에 해당하는 알파벳을 answer에 추가
    for(let i=0; i<letters.length; i++){
        answer += morse[letters[i]]
    }

    return answer;
}

 

 

[ 다른 풀이 ]

// morse를 function 밖으로 빼서 선언
// 더 간단한 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'
}

function solution(letter) {
    return letter.split(' ').reduce((prev, curr) => prev + morse[curr], '')
}

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'Algorithm > Javascript' 카테고리의 다른 글

[ 프로그래머스 ] 구슬을 나누는 경우의 수 ( JS )  (0) 2024.06.21
[ 프로그래머스 ] 가위 바위 보 ( JS )  (1) 2024.06.19
[ 프로그래머스 ] 개미 군단 ( JS )  (0) 2024.06.18
[ 프로그래머스 ] 순서쌍의 개수 ( JS )  (0) 2024.06.18
[ 프로그래머스 ] 진료순서 정하기 ( JS )  (0) 2024.06.18
'Algorithm/Javascript' 카테고리의 다른 글
  • [ 프로그래머스 ] 구슬을 나누는 경우의 수 ( JS )
  • [ 프로그래머스 ] 가위 바위 보 ( JS )
  • [ 프로그래머스 ] 개미 군단 ( JS )
  • [ 프로그래머스 ] 순서쌍의 개수 ( JS )
heee1
heee1
FE 개발자를 희망하는 임희원 입니다.
  • heee1
    heee1.blog
    heee1
  • 전체
    오늘
    어제
    • 분류 전체보기 (69)
      • Front-end (1)
        • Javascript (4)
        • Typescript (1)
        • React (0)
        • Next.js (1)
        • Tool (1)
        • Git (1)
        • Prettier (0)
        • Test-Framework (1)
        • Vercel (1)
      • 교육 (28)
        • 항해99 : 웹개발 종합반 18기 (14)
        • 프로젝트 캠프 : React 2기 (5)
        • 코드잇 스프린트 : 단기심화 5기 (9)
      • Algorithm (29)
        • Javascript (24)
        • Python (5)
      • 코드 보관함 (1)
        • 배치스크립트 ( .bat ) (1)
  • 블로그 메뉴

    • 홈
  • 링크

    • github
  • 공지사항

  • 인기 글

  • 태그

    speed insights
    css animation
    jest
    항해99
    next.js
    react-spring
    코드잇
    스프린트
    Python
    JavaScript
    tailwindcss
    오블완
    백준
    자바스크립트
    node.js
    티스토리챌린지
    모킹
    테스트 프레임워크
    til
    Baekjoon
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
heee1
[ 프로그래머스 ] 모스부호(1) ( JS )
상단으로

티스토리툴바