목록Coding Test (61)
undefined

문제 설명 문제 풀이 function solution(answers) { const one = [1,2,3,4,5] const two = [2,1,2,3,2,4,2,5] const thr = [3,3,1,1,2,2,4,4,5,5] let arr1 = [] let arr2 = [] let arr3 = [] answers.map((e,i) => { if(e===one[i%5]) { arr1.push(true) } if(e===two[i%8]) { arr2.push(true) } if(e===thr[i%10]) { arr3.push(true) } }) const lengthArr = [arr1.length,arr2.length,arr3.length] const maxNum = Math.max(...length..

문제 설명 문제 풀이 function solution(s) { const arr = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]; let answer = [] let word = "" const splited = s.split("") splited.map((e,i) => { if(!isNaN(e)) { answer.push(e) } else { word += e if(arr.includes(word)) { answer.push(arr.indexOf(word)) word = "" } } }) return +answer.join("") } 1. arr 배열 만들어 준다 (index값 = 요소의값) 2. s를 ..

문제 설명 문제 풀이 function solution(n) { const ternary = n.toString(3) return parseInt(ternary.split("").reverse().join(""),3) } 1. toString으로 3진법화 2. 배열로 나눠주고 reverse 3. join으로 합해준 후 parseInt(num,현재진법)으로 10진법화 개선 사항 function solution(n) { return parseInt([...n.toString(3)].reverse().join(""),3) } es6의 신기능 [...arr]를 잘 활용하면 split으로 따로 배열화를 해줄 필요가 없다.

문제 설명 문제 풀이 function solution(numbers) { const answer = [] for(let i =0; i a-b) } 1. 첫번째 for루프 = target 2. 두번째 for루프 = target에 더해줄 숫자들 => j = 1 + i로 이미 더해준 대상들은 더해주지 않음 3. include 되어있지 않으면 answer 배열에 넣어줌 4. sort 개선 사항 fu..

문제 설명 문제 풀이 function solution(n, m) { const arr = [] for(let i = 1; i 1) { arr.shift() } } arr.push(arr[0]*n/arr[0]*m/arr[0]) return arr } 1. 첫번째 if문은 최대공약수를 찾기 위함 => 둘다 나머지가 0이되는 i를 구한다 2. 두번째 if문은 위의 for루프가 1부터 시작되었다. 최대공약수만 남겨주기위해 1을 shift로 빼줌 3. 마지막은 최소공배수를 구하기 위한 식 개선 사항