[NodeJS] 프로그래머스 키패드 누르기
/** * @link https://school.programmers.co.kr/learn/courses/30/lessons/67256?language=javascript */ const solution = (nums, hand) => { let answer = ''; const handNumMap = { left: 10, right: 11, }; const leftNums = [1, 4, 7]; const rightNums = [3, 6, 9]; const numsPosition = [ [1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 0, 11], ]; const updateAnswer = (num, h) => { handNumMap[h] = num; answer += h === '..
더보기
[NodeJS] 프로그래머스 숫자 문자열과 영단어
/** * @link https://school.programmers.co.kr/learn/courses/30/lessons/81301 */ const solution = (str) => { let answer = ''; const map = { ze: [0, 4], on: [1, 3], tw: [2, 3], th: [3, 5], fo: [4, 4], fi: [5, 4], si: [6, 3], se: [7, 5], ei: [8, 5], ni: [9, 4], }; while (str.length > 0) { const char = str[0]; if (!Number.isNaN(Number(char))) { answer += char; str = str.substring(1); } else { const [..
더보기
[NodeJS] 프로그래머스 로또의 최고 순위와 최저 순위
/** * @link https://school.programmers.co.kr/learn/courses/30/lessons/77484 */ const solution = (lottos, win_nums) => { const ranking = { 6: 1, 5: 2, 4: 3, 3: 4, 2: 5, 1: 6, 0: 6, }; const { zeroCnt, winCnt } = lottos.reduce( (obj, curVal) => { if (curVal === 0) { obj.zeroCnt++; } else if (win_nums.includes(curVal)) { obj.winCnt++; } return obj; }, { zeroCnt: 0, winCnt: 0, }, ); return [ranking[..
더보기